Python:字符串格式化程序对齐中心
如何在中间打印?有没有快速的方法可以做到这一点 我不希望文本位于屏幕的中央。我希望它位于24个空间的中心。如果我必须手动操作,那么在文本前后添加相同数量的空格背后的数学原理是什么?您可以使用该方法Python:字符串格式化程序对齐中心,python,string-formatting,text-alignment,Python,String Formatting,Text Alignment,如何在中间打印?有没有快速的方法可以做到这一点 我不希望文本位于屏幕的中央。我希望它位于24个空间的中心。如果我必须手动操作,那么在文本前后添加相同数量的空格背后的数学原理是什么?您可以使用该方法 在您的情况下,它将是:“MyString”。center(24)使用新样式的格式方法,而不是旧式的%运算符,该运算符不具有居中功能: print('%24s' % "MyString") # prints right aligned print('%-24s' % "MyString")
在您的情况下,它将是:
“MyString”。center(24)
使用新样式的格式
方法,而不是旧式的%
运算符,该运算符不具有居中功能:
print('%24s' % "MyString") # prints right aligned
print('%-24s' % "MyString") # prints left aligned
最好使用.format() 解释中心的资源。和其他人一起 Python 3: 您可以遵循以下语法:
print('{:^24s}'.format("MyString"))
在您的示例中:
stringName.center(width,fillChar)
Imho优于格式选项,因为它清楚地表达了意图,不仅如此,还可以使用不同于默认值的填充字符,如以下示例所示:
print(“MyString”.center(24,“-”)
→ -----------MyString------
@gboffi也可以使用格式更改填充字符:print('{:}^24s},.format(“MyString”)
此方法允许我们将其与旧格式样式print('%24s''%MyString.center(24))一起使用
Oh-wow,这对所有像我这样的python新手都会有帮助;如果我一路开始都不问这个问题,我就不会注意到这一点。这种方法会随着字符串的长度减少空间,直到没有空间为止。print(f'{“MyString”:^24s})
"MyString".center(24," ")