1. 程式人生 > >【python讓多個字串居中對齊

【python讓多個字串居中對齊

import sys
import random
reload(sys)
sys.setdefaultencoding('utf-8')

案例一

使用ljust()方法左對齊,其中括號內可以接受兩個引數,字串長度和用什麼填充,比如ljust(10,’-‘)就是10個長度,剩餘的地方用符號-來填滿。

rjust()是右對齊,center()是居中對齊,說教無益,上程式碼。

data_text='langzi'
print data_text.ljust(20,'-')
print data_text.rjust(20,'-')
print data_text.center(20,'-')

執行結果:

langzi--------------
--------------langzi
-------langzi-------

當然也可以用在列印迭代物件的時候居中對齊,但是要注意的是,對齊的物件必須要是字串形式,如果是數字形式的話,就要轉換成字串的格式。

li=['A','B','C','D']
for x in li:
    print x.center(20,'-')

執行結果:

---------A----------
---------B----------
---------C----------
---------D----------

案例二

使用format方法同樣可以實現對齊,語法稍有不同,<20左對齊20個長度,>右對齊,^居中對齊。

print format(data_text,'<20')

執行結果:

langzi       

一般來說用的最多的還是列印字典的時候,字典的鍵不一樣,導致輸出的結果不美觀,使用此方法可以解決本問題。

data_dic={k:random.randint(1,20) for k in ('xiaotaohong','chenyanqin','zhaotiaogeng')}
for k,v in data_dic.iteritems():
    print k.ljust(20) + ' : ' + str(v)

執行結果:

xiaotaohong          : 4
zhaotiaogeng         : 16
chenyanqin           : 19

個人部落格:www.langzi.fun
歡迎交流Python開發,安全測試。