59

我有两种情况,我需要在左右方向(在不同的情况下)用空格填充一个字符串到一定长度。例如,我有字符串:

TEST

但我需要使字符串变量

_____TEST1

这样实际的字符串变量长度为 10 个字符(在这种情况下由 5 个空格引导)。 注意:我显示下划线来表示空格(否则降价在 SO 上看起来不正确)。

我还需要弄清楚如何反转它并从另一个方向填充空格:

TEST2_____

是否有任何字符串辅助函数来执行此操作?还是我需要创建一个字符数组来管理它?

另请注意,我试图将字符串长度保留为变量(我在上面的示例中使用了 10 的长度,但我需要能够更改它)。

任何帮助都是极好的。如果有任何python功能来管理它,我宁愿避免从头开始编写一些东西。

谢谢!

4

2 回答 2

130

你可以调查一下str.ljuststr.rjust我相信。

另一种可能是使用格式方法:

>>> '{:<30}'.format('left aligned')
'left aligned                  '
>>> '{:>30}'.format('right aligned')
'                 right aligned'
>>> '{:^30}'.format('centered')
'           centered           '
>>> '{:*^30}'.format('centered')  # use '*' as a fill char
'***********centered***********'
于 2013-02-08T16:14:36.877 回答
8

Python3 f 字符串用法

l = "left aligned"
print(f"{l.ljust(30)}")

r = "right aligned"
print(f"{r.rjust(30)}")

c = "center aligned"
print(f"{c.center(30)}")

>>> l = "left aligned"
>>> print(f"{l.ljust(30)}")
left aligned                  

>>> r = "right aligned"
>>> print(f"{r.rjust(30)}")
                 right aligned

>>> print(f"{c.center(30)}")
        center aligned        
于 2019-09-06T17:27:35.933 回答