以正确的方式使用.format将文本居中?

时间:2014-06-27 08:07:41

标签: python python-3.x

我想要这个:

============================= thread: 1 starting ==============================

使用.format方法实现此目的的唯一方法是:

print("{:=^79}".format(' Thread: ' + self.thread_id + ' starting '))

有更好的方法吗?因为这有点难以理解,有点违背了左边有字符串而右边有值的整个.format原则。

1 个答案:

答案 0 :(得分:2)

正如@Felix Lahmer指出的那样,您可以使用center

>>> ' Thread: {} starting '.format(42).center(79, '=')
'============================= Thread: 42 starting ============================='

或者你可以嵌套format

>>> '{:=^79}'.format(' Thread: {} starting '.format(42))
'============================= Thread: 42 starting ============================='