Python字符串对齐格式化指南:ljust、rjust、center与format详解

Cora
Cora
发布时间:2026-10-14 | 6人浏览过
原创

本文详解Python中实现字符串对齐的多种方法,包括ljust、rjust和center内置函数,以及更通用的format()函数。通过示例展示如何指定宽度和自定义填充字符,对比旧式%操作符,推荐在代码中优先使用format()以实现更灵活的对象格式化。

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() 函数也能轻松实现字符串对齐。只需在对齐符号(<、>或^)后紧跟目标宽度即可。示例如下:


>>> 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() 方法更为通用,因为它能够处理任意对象,而不仅限于字符串类型。

若希望深入掌握format() 函数的各项实用特性,建议查阅在线Python官方文档。

以上就是Python如何对齐字符串的详细内容,更多关于Python对齐字符串的资料请关注本站其它相关文章!

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表