簡體   English   中英

使用python中的枚舉在單獨的行上打印編號的嵌套列表

[英]Printing numbered nested lists on separate lines using enumerate in python

盡管我懷疑它的簡單修復會暫時從我的大腦中泄漏出來,但我在嘗試實現以下目標時遇到了一些悲傷。 我需要能夠打印出一個可變尺寸的網格,該網格的左側數字如下所示

1 - + -
2 + - + 
3 - + -

網格由嵌套列表組成,使用i+1 enumerate ,如下所示

for i, line in enumerate(grid):
    return i+1, line

我可以在左側獲得這些數字,但是輸出顯示為不整齊的列表,與我想要的不完全相同,此刻我正在使用以下命令打印網格(無數字)

def print_grid(grid):
    for line in grid:
        for char in line:
            print char,
        print

還有其他我應該使用的東西,而不是為了使這些數字靠邊列舉? 因為可以用可變參數設置網格,所以我真的希望有一種方法可以在打印它時實現這一點,而不是修改我用來構建網格的代碼,而我非常希望能夠不破壞它的破壞? 我在互聯網上進行了搜索,發現有人在他們畫的任何圖片的底部都出現了數字,但沒有像這樣那樣出現在左手邊。 無論我將枚舉語句放在print_grid函數中的哪個位置,它都會弄亂輸出。

您可以將每個列表合並為一個字符串:

for i, line in enumerate(grid, 1):
    print i, ' '.join(line)

您在找這個嗎?

for i, line in enumerate(grid):
   print i,
   for char in line:
      print char,
   print

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM