Python: String Formatter 居中对齐

Python: String Formatter Align center

print('%24s' % "MyString")     # prints right aligned
print('%-24s' % "MyString")    # prints left aligned

如何打印在中间?有快速的方法吗?

我不希望文本位于屏幕中央。我希望它位于 that 24 个空格的中心。如果我必须手动完成,那么添加相同编号背后的数学原理是什么?文本前后的空格数?

你可以使用str.center()方法。

在您的情况下,它将是:"MyString".center(24)

使用新式 format 方法代替没有居中功能的旧式 % 运算符:

print('{:^24s}'.format("MyString"))

理想情况下,您会使用 .format()。

解释中心的资源。和其他人一起 here

Python 3:

您可以遵循以下语法:

stringName.center(width,fillChar)

在你的例子中:

"MyString".center(24," ")