[英]dictionaries create table python
我不明白為什么這里的結果是[[0 0] [0 0]]; 這是代碼:
def create_table(m,n):
t=[]
one_line=[]
for i in range(0,m):
one_line.append(0)
for i in range(0,n):
t.append(one_line)
return t
print(create_table(2,2));
在one_line中進行第一次迭代后,我們得到[0],在t [[0]]中得到。
在第二次迭代之后,其中i = 2,我們得到one_line = [0 0],t = [[0 0] [0 0]]。 但是為什么不是t = [[0] [0 0]],因為前一個t是[[0]]而不是[[0 0] [0 0]]。
有什么解釋嗎?
您已經定義了兩個for循環:
因此,運行您的函數調用create_table(2,2)
create_table(2, 2):
設定:m = 2,n = 2
t = []
one_line = []
定義:t = [],one_line = []
for i in range(0,m):
對於[0,1]中的我
當我= 0
one_line.append(0)
one_line = [0]
當我= 1
one_line.append(0)
one_line = [0,0]
for i in range(0,n):
因為我在(0,1)
當我= 0
t.append(one_line)
t = [[0,0]]
當我= 1
t.append(one_line)
t = [[0,0],[0,0]]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.