2013-05-28 31 views
0

我有下面的代碼,基本上返回5列表(在這種情況下,有關所說的手中的卡的個人信息)的列表(player1Hand)。如何將列表中的數據轉換爲可讀表(或列組)?

def getPlayer2Hand(handAmount): 
    getPlayer2Deck() 
    player2Hand = [] 

    for i in range(handAmount): 
     card = [] 
     card.append(deckListPlayer2Full[i]['NameOfCard']) 
     card.append(deckListPlayer2Full[i]['Attack']) 
     card.append(deckListPlayer2Full[i]['Defense']) 
     card.append(deckListPlayer2Full[i]['Magic']) 
     card.append(deckListPlayer2Full[i]['Shield']) 
     player2Hand.append(card) 

    return player2Hand 

如何打印出清單「player2Hand"成可讀的列或表中的信息?我想用以上(NameOfCardAttack等)的字典鍵作爲標題。

我試圖用TextTable,但我似乎無法得到它的工作

這裏是什麼player2Hand看起來像一個例子:

[['Knight', '500', '500', '0', '0'], 
['Mage', '0', '0', '500', '500'], 
['Mage', '0', '0', '500', '500'], 
['Mage', '0', '0', '500', '500'], 
['Mage', '0', '0', '500', '500']] 
+0

你的問題是不精確。你需要什麼格式的表格?無論如何,看看[格式字符串](http://docs.python.org/2/library/string.html#format-examples) – Elazar

+0

谷歌** python格式表** – Blender

+0

對不起,精度不夠,但我只是試圖將player1Hand \ player2Hand中的文本打印成一系列帶有上方標題的列。我發現TextTable,它將它打印成我認爲的ASCII風格,但是我一直無法使它工作。 – bhamhawker

回答

1

有點字符串格式化可能會有所幫助:

>>> data = [['Knight', '500', '500', '0', '0'], 
      ['Mage', '0', '0', '500', '500'], 
      ['Mage', '0', '0', '500', '500'], 
      ['Mage', '0', '0', '500', '500'], 
      ['Mage', '0', '0', '500', '500']] 

>>> frmt = '{:10s}' + 4 * '{:>12s}' 
>>> for line in data:: 
     print(frmt.format(*line)) 

結果:

Knight    500   500   0   0 
Mage     0   0   500   500 
Mage     0   0   500   500 
Mage     0   0   500   500 
Mage     0   0   500   500 
+0

10和12分別代表「10個空格」和「12個空格」嗎? – bhamhawker

+0

邁克,謝謝。我接受了這個,因爲它幾乎完全符合我的預期。 – bhamhawker

0

就在你可能想要做什麼一個快速和骯髒刺:

>>> x = [['Knight', '500', '500', '0', '0'],['Mage', '0', '0', '500', '500'], ['Mage', '0', '0', '500', '500'], ['Mage', '0', '0', '500', '500'], ['Mage', '0', '0', '500', '500']] 
>>> for row in x: 
...  output = [row[0].ljust(20)] 
...  for col in row[1:]: 
...   output.append(col.rjust(10)) 
...  print ''.join(output) 
... 
Knight      500  500   0   0 
Mage       0   0  500  500 
Mage       0   0  500  500 
Mage       0   0  500  500 
Mage       0   0  500  500 
相關問題