2012-10-22 62 views
0

可能重複:
How do I right-align my text in Python?右對齊此列

4 8 12 16 
20 24 28 32 
36 40 44 48 
52 56 60 64 
68 72 76 80 
84 88 92 96 
100 104 108 112 
116 120 124 128 
132 136 140 144 
148 152 156 160 

現在我有一列是這樣的。有人可以幫我弄清楚如何右對齊列,使其看起來像這樣:

4  8 12 16 
20 24 28 32 
36 40 44 48 
52 56 60 64 
68 72 76 80 
84 88 92 96 
100 104 108 112 
116 120 124 128 
132 136 140 144 
148 152 156 160 
+1

向我們顯示您的代碼。 –

+0

http://www.google.com/search?q=python+align –

回答

5
>>> for line in data: 
...  print ' '.join('{:>3}'.format(i) for i in line.split()) 
... 
    4  8 12 16 
20 24 28 32 
36 40 44 48 
52 56 60 64 
68 72 76 80 
84 88 92 96 
100 104 108 112 
116 120 124 128 
132 136 140 144 
148 152 156 160 

參見Format String Syntax的文檔。

0
cell_width = 6 

for row in data: 
    #"%-6s"%val will right format 6 spaces 
    print ("%-"+cell_width+"s ")*len(row) % row 

類似的東西反正...我要指出,%字符串格式化被認爲是貶值...

0

除了字符串格式化,也有字符串str.rjust該內置功能:

for line in data.splitlines(): 
    print ' '.join(el.rjust(5) for el in line.split())