Python字符串对齐方法(ljust()、rjust()和center())详解

Python str 提供了 3 种可用来进行文本对齐的方法,分别是 ljust()、rjust() 和 center() 方法,本节就来一一介绍它们的用法。

Python ljust()方法

ljust() 方法的功能是向指定字符串的右侧填充指定字符,从而达到左对齐文本的目的。

ljust() 方法的基本格式如下:

S.ljust(width[, fillchar])

其中各个参数的含义如下:

1、S:表示要进行填充的字符串;

2、width:表示包括 S 本身长度在内,字符串要占的总长度;

3、fillchar:作为可选参数,用来指定填充字符串时所用的字符,默认情况使用空格。


【例 1】

S = 'http://www.gamecolg.com/python/'
addr = 'http://www.gamecolg.com'
print(S.ljust(35))
print(addr.ljust(35))

输出结果为:

http://www.gamecolg.com/python/    
http://www.gamecolg.com

注意,该输出结果中除了明显可见的网址字符串外,其后还有空格字符存在,每行一共 35 个字符长度。

【例 2】

S = 'http://www.gamecolg.com/python/'
addr = 'http://www.gamecolg.com'
print(S.ljust(35,'-'))
print(addr.ljust(35,'-'))

输出结果为:

http://www.gamecolg.com/python/-----
http://www.gamecolg.com-------------

此程序和例 1 的唯一区别是,填充字符从空格改为‘-’。

Python rjust()方法

rjust() 和 ljust() 方法类似,唯一的不同在于,rjust() 方法是向字符串的左侧填充指定字符,从而达到右对齐文本的目的。

rjust() 方法的基本格式如下:

S.rjust(width[, fillchar])

其中各个参数的含义和 ljust() 完全相同,所以这里不再重复描述。

【例 3】

S = 'http://www.gamecolg.com/python/'
addr = 'http://www.gamecolg.com'
print(S.rjust(35))
print(addr.rjust(35))

输出结果为:

     http://www.gamecolg.com/python/
             http://www.gamecolg.com

可以看到,每行字符串都占用 35 个字节的位置,实现了整体的右对齐效果。

【例 4】

S = 'http://www.gamecolg.com/python/'
addr = 'http://www.gamecolg.com'
print(S.rjust(35,'-'))
print(addr.rjust(35,'-'))

输出结果为:

-----http://www.gamecolg.com/python/
-------------http://www.gamecolg.com

Python center()方法

center() 字符串方法与 ljust() 和 rjust() 的用法类似,但它让文本居中,而不是左对齐或右对齐。

center() 方法的基本格式如下:

S.center(width[, fillchar])

其中各个参数的含义和 ljust()、rjust() 方法相同。

【例 5】

S = 'http://www.gamecolg.com/python/'
addr = 'http://www.gamecolg.com'
print(S.center(35,))
print(addr.center(35,))

输出结果为:

   http://www.gamecolg.com/python/ 
       http://www.gamecolg.com


【例 6】

S = 'http://www.gamecolg.com/python/'
addr = 'http://www.gamecolg.com'
print(S.center(35,'-'))
print(addr.center(35,'-'))

输出结果为:

---http://www.gamecolg.com/python/--
-------http://www.gamecolg.com------