是否可以在Python中将print语句与中心对齐?

时间:2015-11-08 14:19:47

标签: python alignment console-output

我想知道是否可以在Python(最新版本)中对齐print语句。例如:

print ("hello world")

会出现在左侧用户的屏幕上,那么我可以将其设为居中对齐吗?

非常感谢你的帮助!

= 80(列)x 30(宽度)

2 个答案:

答案 0 :(得分:5)

首先,使用os.get_terminal_size()功能获取控制台的宽度(因此您之前不需要知道控制台):

>>> import os
>>> os.get_terminal_size()
os.terminal_size(columns=80, lines=24)
>>> os.get_terminal_size().columns
80
>>> os.get_terminal_size().columns  # after I changed my console's width
97
>>> 

然后,我们可以使用str.center()

>>> import os
>>> print("hello world".center(os.get_terminal_size().columns))
                                  hello world                                  
>>> 

所以清晰的代码如下:

import os

width = os.get_terminal_size().columns
print("hello world".center(width))

答案 1 :(得分:2)

了解控制台宽度,您还可以使用format打印居中:

 # console width is 50 
 print "{: ^50s}".format("foo")

将打印' foo'在50列控制台的中间。