我正在做一個0的網格,我希望我的行在新行上打印,但我想要一個更簡單的方法,然後不斷要求打印(行)。這是我的代碼到目前爲止。基本python重複打印請求
row = []
for i in range(0,1):
row.append(" O " * 5)
print(row)
print(row)
我正在做一個0的網格,我希望我的行在新行上打印,但我想要一個更簡單的方法,然後不斷要求打印(行)。這是我的代碼到目前爲止。基本python重複打印請求
row = []
for i in range(0,1):
row.append(" O " * 5)
print(row)
print(row)
你所描述的是遍歷零維的二維列表。
# The dimensions of the two-dimensional list.
columns = 5
rows = 5
# A generator to produce the two-dimensional list.
zeros = [[0 for i in range(columns)] for j in range(rows)]
# Loops through and prints each row of the two-dimensional list.
for row in zeros:
print(row)
對於給定的尺寸,當執行這段代碼的輸出如下:
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
grid = [[0 for i in range(5)] for j in range(5)]
[print(row) for row in grid]
輸出:
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
您的第一行代碼很好,但第二行不太好。請不要使用這樣的列表解析!只需使用「傳統」的''循環。你的'[print(row)in grid]'創建一個完整的'None'列表,然後拋出該列表。它通常被認爲是一個不好的風格,因爲列表元素有任何副作用:除了構建列表之外,它不應該有任何其他的影響。因此,使用列表comp _purely_作爲副作用並將列表扔掉是一個很大的禁忌。 –
謝謝你的解釋! – Jossildur
如果你只是想的固定網格字符串,你不需要任何循環,你可以使用字符串和列表multiplica和字符串.join
方法將網格的行連接在一起進行打印。
size = 5
row = " O " * size
grid = [row] * size
print('\n'.join(grid))
輸出
O O O O O
O O O O O
O O O O O
O O O O O
O O O O O
謝謝你,我居然拿了0TTT0諮詢和範圍又寫了looprow = [] 格= 5 爲我(0,1): row.append (「O」* 5) #print(row) while grid> 0: print(row) grid = grid - 1 – Megan59781