变量、对象、类型与可变性
Python 变量是对象的绑定名称,不是固定大小的“盒子”。赋值会让名称指向对象:
int、float、str、tuple 等常用对象不可变;list、dict、set 可变。理解可变性可避免函数和赋值中的意外共享。
left = ["a"]
right = left
right.append("b")
print(left) # ['a', 'b'],两者引用同一列表
copy = left.copy()
copy.append("c")
== 比较值是否相等,is 比较是否为同一对象。一般只用 is None 判断空值:
不要用 is 比较整数或字符串内容;对象驻留是实现细节,不是业务规则。