网淘吧来吧,欢迎您!

Python技能使用说明

2026-03-29 新闻来源:网淘吧 围观:11
电脑广告
手机广告

快速参考

主题文件
动态类型、类型提示、鸭子类型types.md
列表/字典/集合的陷阱、推导式collections.md
参数/关键字参数、闭包、装饰器、生成器functions.md
继承、描述符、元类classes.md
GIL、线程、异步IO、多进程concurrency.md
循环导入、包、init.pyimports.md
Pytest、模拟、夹具testing.md

关键规则

  • def f(items=[])在所有调用中共享同一个列表——应使用items=None然后items = items or []
  • 检查身份,==检查相等性 ——"a" * 100 is "a" * 100可能为 False
  • 在遍历时修改列表会跳过元素 —— 遍历副本:for x in list(items):
  • GIL 阻止了真正的 Python 线程并行 —— 对于 CPU 密集型任务使用多进程
  • except:会捕获SystemExitKeyboardInterrupt—— 使用except Exception:
  • UnboundLocalError当给外部作用域变量赋值时 —— 使用nonlocalglobal
  • open()没有上下文管理器会导致句柄泄漏——务必使用with open():
  • 循环导入会静默失败或部分失败——在函数内部导入以打破循环
  • 0.1 + 0.2 != 0.3——浮点数问题,请使用decimal.Decimal处理货币
  • 生成器在一次迭代后耗尽——无法重用,需要重新创建或使用itertools.tee
  • 可变类属性在实例间共享——应在__init__中定义
  • __init__不是构造函数——__new__创建实例,__init__初始化实例
  • 默认编码依赖于平台——请始终指定encoding='utf-8'

免责申明
部分文章来自各大搜索引擎,如有侵权,请与我联系删除。
打赏
文章底部电脑广告
手机广告位-内容正文底部

相关文章

您是本站第326346名访客 今日有221篇新文章/评论