一些奇奇怪怪的内容
1.a += b和a = a + b
代码
x = []
y = x
x += [1, 2] # 此时x和y为同一对象,都是[1, 2]
x = x + [1, 2] # 此时x和y不是同一对象,x是[1, 2, 1, 2], y是[1, 2]
由上可见,python中a += b和a = a + b并不等价,+=为原地操作(列表中相当于extend),=+为复值操作,会创建新对象
一些奇奇怪怪的内容
代码
x = []
y = x
x += [1, 2] # 此时x和y为同一对象,都是[1, 2]
x = x + [1, 2] # 此时x和y不是同一对象,x是[1, 2, 1, 2], y是[1, 2]
由上可见,python中a += b和a = a + b并不等价,+=为原地操作(列表中相当于extend),=+为复值操作,会创建新对象
上一篇 python-demo集合