9

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

print ("hello world")

会出现在左侧的用户屏幕上,所以我可以让它居中对齐吗?

非常感谢你的帮助!

= 80(列)x 30(宽度)

4

2 回答 2

17

首先,使用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))
于 2015-11-08T14:26:54.937 回答
5

知道控制台宽度后,您还可以使用以下命令居中打印format

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

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

于 2015-11-08T14:27:21.743 回答