gpt4 book ai didi

python - 如何在 input() 之后将 python 3 中的文本居中?

转载 作者:太空宇宙 更新时间:2023-11-04 08:32:03 25 4
gpt4 key购买 nike

我真的无法在网上找到任何真正有用的东西,所以我想问问自己。我有以下代码:

username = input()
username = username.capitalize()
print("Hello " + username ) # I want this to be centered

我希望打印语句以运行它的任何控制台为中心。感谢您的帮助!

最佳答案

这有两个部分。


首先,您需要获取控制台宽度。你用 shutil.get_terminal_size 做到这一点.

由于并非总能获得控制台宽度 — 就此而言,可能甚至都没有(例如,如果您的程序的标准输出被重定向到一个文件并且没有甚至有一个终端),它将回退到 80 列(尽管您可以根据需要覆盖它):

cols, rows = shutil.get_terminal_size()

现在你只是center该宽度的字符串。该字符串包含用户输入的事实并不重要。连接 "Hello "username 后,您将获得一个与任何其他字符串对象一样工作的 str。所以:

print(("Hello " + username).center(cols))

如果用户的输入可能太长而无法放在一行中,您需要先将其换行,然后将行居中。您可以使用 textwrap模块:

for line in textwrap.wrap("Hello " + username, cols):
print(line.center(cols))

关于python - 如何在 input() 之后将 python 3 中的文本居中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52138936/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com