在python中打印"====中间对齐标题===="的优雅方式

jin*_*wan 3 python

据我所知,有一些优雅的方法可以打印左右对齐的字符串.像这样

str = "left_justified"
str.ljust(20, '0');
Run Code Online (Sandbox Code Playgroud)

要么

print "{0:{1}<20}".format(str, "=")
Run Code Online (Sandbox Code Playgroud)

结果将是

left_justified=====
Run Code Online (Sandbox Code Playgroud)

打印中间对齐字符串的最佳方法是什么?

icy*_*com 12

>>> "hello".center(50, '=')
'======================hello======================='
Run Code Online (Sandbox Code Playgroud)


ber*_*nie 5

你错过了^:

s = 'centered'
print "{0:{1}^20}".format(s, "=")
# -> ======centered======
Run Code Online (Sandbox Code Playgroud)

我也冒昧地将你的str变量重命名为不影响内置的东西str.