2016-12-01 50 views
0

我寫了一個模擬魔術卡技巧的簡單程序。我不覺得需要發佈整個程序,因爲它運行平穩,我遇到的問題是找到一種方法來顯示6個數字網格供用戶選擇。如何整齊地顯示數字的網格?

我寫它使用Python 2.7

在代碼示例下面我剛纔所示的網格2,如何我打印出來,這實際上是一個改進,它是如何爲我加了(\ n )下一行。數據以非常無組織的方式顯示。它看起來不整潔。如果我玩的間距,並得到它kinda好看,這是很容易撤銷終端用戶有不同的窗口尺寸。

Python中是否有內置的東西來整齊地顯示數字或表格的網格? 或者一個額外的模塊用於顯示一個相當簡單的數字網格?

表格不需要任何標題或任何東西,我只是想顯示數字。之後,程序不需要與網格或表格中的數字進行交互,因爲現在我可以通過收集用戶的輸入來做到這一點。

每個網格有32個號碼,它可以被劃分成4×8表或網格

GRID_1 = ['32....33....34....35 \n36....37....38....39', 
      '40....41....42....43 \n44....45....46....47', 
      '48....49....50....51 \n52....53....54....55', 
      '56....57....58....59 \n60....61....62....63'] 

GRID_2 = ['8.....9.....10....11 \n12....13....14....15', 
      '24....25....26....27 \n28....29....30....31', 
      '40....41....42....43 \n44....45....46....47', 
      '56....57....58....59 \n60....61....62....63'] 

print ("\n\nHere is Grid Number: 1\n\n") 
print (GRID_1) 
print ("\n\nHere is Grid Number: 2\n\n") 
print (GRID_2) 

我希望我已經提供了足夠的信息來得到合理的解決方案,我不把整個節目道歉進入我的問題,我只是想把重點放在我所看到的領域。我對這個網站相當陌生,所以如果有什麼我可以做得更好,我很欣賞這個反饋。

回答

0

該庫是一個函數,它值的迭代,並將它們打印在寬度4

def grid_print(it): 
    for x in zip(*[iter(it)]*4): 
     print('{:<4}{:^6}{:^6}{:^6}'.format(*x)) 
+0

這是我需要的更多,因爲它不需要額外的模塊,它給了我整潔的外觀,但它仍然在一個部分增加了一倍 – raser

+0

你是什麼意思雙打?你可以考慮在調用'grid_print'之後給'print'打一個空的調用。 –

+0

現在很好,通過在幾個關鍵位置添加(\ n)來放下'加倍'的直線,它顯示整齊的數字網格,這個功能非常有用,我將它實現到整個程序中,只需相應地更改網格編號,它就可以很好地工作。這正是我所期待的,網格現在整齊地顯示出來,看起來很完美。感謝您的幫助,我對網站不熟悉,所以不明白如何做投票方面的事情(我聽到人們說upvoting等,但我沒有看到我的帳戶上的這個選項)無論如何謝謝先生 – raser