2017-04-06 55 views
0

我有一個2D列表,如下所示。打印2D列表的金字塔圖案

Board = [[1], 
      [1,2,3], 
      [1,2,3,4,5], 
      [1,2,3,4,5,6,7]] 

我想要做的是在金字塔/三角形結構中打印此列表。

它應該是這樣的:

    1 
      1  2  3 
    1  2  3  4  5 
1 2  3  4  5  6  7 

我在我的程序中使用這款主板的遊戲,我想打。 我通過其他一些問題進行了搜索,其中大多數使用簡單字符(即「*」)顯示金字塔。 我想使用2D列表內的內容來顯示金字塔。我似乎無法找到辦法做到這一點...

有沒有什麼辦法可以打印出上面的格式/結構?

回答

0

您可以通過Board進行枚舉並在行的開頭添加len(Board) - current_index多個製表符;

>> board_length = len(Board) 
>> for i, b in enumerate(Board): 
>>  print("\t"*(board_length - i - 1) + "\t".join(str(x) for x in b)) 

結果在;

     1 
       1  2  3 
     1  2  3  4  5 
1  2  3  4  5  6  7