2014-05-07 44 views
1

說我有Python中的字符串換行符:右對齊中包含字符串換行文本

my_string='{a}\n{b}\n{c}'.format(a=a,b=b,c=c) 

其中ab和可能不同長度的c保持字符串。

如何正確調整my_string的行?

+0

您無法調整它* *內。這一次我確定你需要創建一個新的'str'對象。 – vaultah

+0

謝謝@frostnational我更新了帖子,以澄清我的意思。 –

回答

3

AFAIK,有沒有內置的功能,右對齊mulitiple線,但它看起來像一塊蛋糕:

a = """ 
Lorem 
ipsum dolor sit 
amet, consectetur adipisicing 
elit 
""" 

lines = a.strip().splitlines() 
width = max(map(len, lines)) 
print '\n'.join(x.rjust(width, '*') for x in lines) 

*是爲了清楚起見只,刪除它,當你準備好測試)。

或者,如果你事先知道文字是如何寬將是,你可以在格式字符串指定對齊:

mystring = '{a:>20}\n{b:>20}\n{c:>20}'.format(a=a,b=b,c=c)