【发布时间】:2016-02-03 06:36:46
【问题描述】:
我对下面 Python 代码的结果差异感到很困惑。为什么在第一种情况下,“a”不会随着“b”的变化而变化,而在第二种情况下呢?
a=b=[]
b = [1,2,3]
print b,a
########## compare with below ################################
a=b=[]
b.append([1,2,3])
print b,a
第一部分的结果是: [1,2,3] [ ] 第二部分的结果是: [[1,2,3]] [[1,2,3]]
有人建议这是一个重复的问题,但我认为我在这里用两种不同的方式更改列表“b”,我想它可以显示这两种变量操作方法可能有何不同。
【问题讨论】:
-
在第一部分中,您将 b 指向一个新的、不同的列表。在第二个中,a 和 b 都指向同一个列表。
标签: python variable-assignment