这篇文章主要讲解了Python对齐字符串的方式,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。
问题
你想通过某种对齐方式来格式化字符串
解决方案
对于基本的字符串对齐操作,可以使用字符串的 ljust()
, rjust()
和 center()
方法。比如:
>>> text = 'Hello World'
>>> text.ljust(20)
'Hello World '
>>> text.rjust(20)
' Hello World'
>>> text.center(20)
' Hello World '
>>>
所有这些方法都能接受一个可选的填充字符。比如:
>>> text.rjust(20,'=')
'=========Hello World'
>>> text.center(20,'*')
'****Hello World*****'
>>>
函数 format()
同样可以用来很容易的对齐字符串。 你要做的就是使用 <,> 或者 ^ 字符后面紧跟一个指定的宽度。比如:
>>> format(text, '>20')
' Hello World'
>>> format(text, '<20')
'Hello World '
>>> format(text, '^20')
' Hello World '
>>>
如果你想指定一个非空格的填充字符,将它写到对齐字符的前面即可:
>>> format(text, '=>20s')
'=========Hello World'
>>> format(text, '*^20s')
'****Hello World*****'
>>>
当格式化多个值的时候,这些格式代码也可以被用在 format()
方法中。比如:
>>> '{:>10s} {:>10s}'.format('Hello', 'World')
' Hello World'
>>>
format()
函数的一个好处是它不仅适用于字符串。它可以用来格式化任何值,使得它非常的通用。 比如,你可以用它来格式化数字:
>>> x = 1.2345
>>> format(x, '>10')
' 1.2345'
>>> format(x, '^10.2f')
' 1.23 '
>>>
讨论
在老的代码中,你经常会看到被用来格式化文本的 % 操作符。比如:
>>> '%-20s' % text
'Hello World '
>>> '%20s' % text
' Hello World'
>>>
但是,在新版本代码中,你应该优先选择 format()
函数或者方法。 format()
要比 % 操作符的功能更为强大。 并且 format()
也比使用 ljust()
, rjust()
或 center()
方法更通用, 因为它可以用来格式化任意对象,而不仅仅是字符串。
看完上述内容,是不是对Python对齐字符串的方式有进一步的了解,如果还想学习更多内容,欢迎关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。