Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
List Python,将一个列表附加到另一个列表_List_Python 2.7 - Fatal编程技术网

List Python,将一个列表附加到另一个列表

List Python,将一个列表附加到另一个列表,list,python-2.7,List,Python 2.7,我需要在2D列表中附加一个列表,以便编辑添加的列表。我有这样的想法: n = 3 a = [ ['a', 2, 3], ['b', 5, 6], ['c', 8, 9] ] b = [None for _ in range(n)] # [None] * n print b a.append(b) a[3][0] = 'e' print a a.append(b) a[4][0] = 'f' print a 我得到的结果是: [None, None, None] [

我需要在2D列表中附加一个列表,以便编辑添加的列表。我有这样的想法:

n = 3
a = [
    ['a', 2, 3],
    ['b', 5, 6],
    ['c', 8, 9]
]
b = [None for _ in range(n)]    # [None] * n
print b
a.append(b)
a[3][0] = 'e'
print a
a.append(b)
a[4][0] = 'f'
print a
我得到的结果是:

[None, None, None]
[['a', 2, 3], ['b', 5, 6], ['c', 8, 9], ['e', None, None]]
[['a', 2, 3], ['b', 5, 6], ['c', 8, 9], ['f', None, None], ['f', None, None]]  
第四行的
e
变为
f
,我不想这样。使用
[None]*3
我得到了相同的结果。如何防止这种情况发生?我检查了,但它不起作用。

b
指向同一个python对象

您应该这样做来创建
b
的新副本:

a.append(list(b))
b
指向同一个python对象

您应该这样做来创建
b
的新副本:

a.append(list(b))

您的公式可以改进:
b
不是空列表,因为它的长度是3。您的公式可以改进:
b
不是空列表,因为它的长度是3。