2014-12-08 135 views
0

我想打印的清單作爲一個表打印列表,表(行,列)

下面的代碼創建的行和列(換句話說指定金額,它創建的列表指定大小)。

finalgrid1 =[[0 for j in range(keyword_size)] #print rows (size of keyword) 
      for i in range(1 + new_grid_size)] #print column (size of ciphers) 
print(finalgrid1) 

打印的結果是(當keyword_size = 3):

[[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, 0, 0, 0], 
[0, 0, 0, 0]] 

我正在創建一個密碼編碼器和解碼器程序作爲作業的一部分。 我已經實現了它的大部分 - 只是堅持以正確的格式(如表格)進行打印。 順便說一句,我不是要求你應用任何改變,我只想知道如何以表格格式打印列表,就這些。

我感謝你的幫助

回答

0

試試這個,基本上是出打印每個列表,直到有沒有留下來打印

i = 0 
while i < len(finalgrid1): 
    print finalgrid1[i] 
    i += 1 
+0

曾任職完美。我會接受你的回答。 4分鐘後:p – ComputerScienceStudent 2014-12-08 01:37:10

+0

@kukac ..我看不出有什麼比這更簡單。 – ComputerScienceStudent 2014-12-08 01:39:36

+1

有一個稍微優雅的解決方案。 'for finalgrind1中的行:打印行' – adam 2014-12-08 01:40:13

0

字符串化每個列表,並一起加入他們的行列:

>>> grid = [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]] 
>>> 
>>> print('\n'.join(str(x) for x in grid)) 
[0, 0, 0, 0] 
[0, 0, 0, 0] 
[0, 0, 0, 0] 
[0, 0, 0, 0]