Python打印字符串居中

时间:2013-05-18 17:30:56

标签: python string printform

我会打印一个超过1行的字符串

a = "*\n*\n**"

我试过

print '{0:^20}'.format(a, 'centered')

但它放在第一个*的中心,我怎么能把所有的字符串放在中心?

1 个答案:

答案 0 :(得分:1)

它确实使整个字符串居中:

>>> '{0:^20}'.format(a, 'centered')
'       *\n*\n**       '

请注意,这会在a之前和之后放置七个空格。我认为你期望它以每一行的内容为中心,以下是你如何做到这一点:

>>> print '\n'.join('{0:^20}'.format(x, 'centered') for x in a.split('\n'))
         *
         *
         **