Python 解包列表并更改元素
以以下两个案例为例:Python 解包列表并更改元素,python,Python,以以下两个案例为例: >>> a, b = [[None, None]]*2 >>> print(a, b) [None, None] [None, None] >>> a[0] = 1 >>> print(a, b) [1, None] [1, None] & 我不明白为什么第一个案例没有表现出与第二个案例相同的行为,因为[[None,None]]*2=[[None,None],[None,None]]返回Tru
>>> a, b = [[None, None]]*2
>>> print(a, b)
[None, None] [None, None]
>>> a[0] = 1
>>> print(a, b)
[1, None] [1, None]
&
[[None,None]]*2=[[None,None],[None,None]]
返回True
是的,谢谢。建议的解决方案是:
a,b=[[None,None]for uuu.in range(2)]
。您可以使用id()方法a,b=[[None,None]]*2a[0]=1打印(a,b)打印(id(a[0]),id(b[0])
>>> a, b = [[None, None], [None, None]]
>>> print(a, b)
[None, None] [None, None]
>>> a[0] = 1
>>> print(a, b)
[1, None] [None, None]