[英]Two ways to create 2D array in python
在python中創建2d數組的以下兩種方式有什么區別?
def arrays(row, column):
myList = [[None]*column for i in range(row)]
def arrays(row, column):
myList = [[None]*column]*row
在第一種情況下,單獨的指針用於存儲您的子列表。
在第二個實例中,使用相同的指針。 因此,改變一個人的價值也會改變其他人的價值。
這是一個說明性的例子: -
def arrays1(row, column):
return [[None]*column for i in range(row)]
def arrays2(row, column):
return [[None]*column]*row
x = arrays1(2, 2)
y = arrays2(2, 2)
x[0][0] = 1
y[0][0] = 1
print(x) # [[1, None], [None, None]]
print(y) # [[1, None], [1, None]]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.