2
如果我建一个嵌套列表:为什么`a + = x`和`a = a + x`为嵌套列表实现不同?
nested_list = 3*[[]]
,如果我再添加元素,它
nested_list[1] += [1, 2, 3]
。返回:[[1,2,3],[1,2,3],[1,2,3]]nested_list[1] = nested_list[1] + [1, 2, 3]
。返回:[[],[1,2,3],[]]
我希望能够获得第2种情况的结果。
为什么我会在情况1中获得不同的结果?这是python的设计选择吗?情况1的结果的逻辑是什么?
这里的核心问题是'nested_list = 3 * [[]]'是创建列表列表的不好方法:http://stackoverflow.com/q/240178/3001761 – jonrsharpe