当我这样做
a = [1]
a.append(2)
print a
结果是 [1,2]
- 但是
print [1].append(2)
是无
。
我的理解是a
是列表对象[1]
的引用。 python 中的一切都是对象。 [1]
也是一个列表对象。 a
和 [1]
应该是完全一样的。
为什么结果完全不同?
最佳答案
你误解了你的代码。差异与变量无关;它是在第二个你正在打印 append
的返回值,但是 append always 返回 None。如果您在第一个代码中打印了 a.append(2)
,您也会得到 None,除了 a
会同时被修改.
关于python - python 中的 a=[1] 和 [1] 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34527057/