GUIDE深度 · Deep dive

Python 常见坑

Python 很多 bug 来自“看起来对”。可变默认参数、列表浅拷贝、is 与 ==、整除和浮点误差是高频坑;先预测输出,再运行验证。

更新 2026-10-30 · 公式可核验

四个高频坑

def f(x=[]):默认列表只创建一次。

y = x 不是拷贝,改 y 会影响 x。

is 比较身份,== 比较值。

0.1 + 0.2 != 0.3(浮点误差)。

怎么避免

默认参数用 None,再在函数内建列表。

需要独立列表用 copy()/切片/深拷贝。

常见问题

为什么 0.1+0.2 不是 0.3?

二进制浮点无法精确表示 0.1;比较用 math.isclose。

is 什么时候用?

和 None/True/False 比较,或确实要比较同一对象。

数据来源

相关计算器

Python 卡片闯关60 张 Python 语法与内置函数卡片,6 关,按 1/3/7/14/30/60/120 天复习。

更多指南

Python 先学什么?阅读指南