Python 字符串 rpartition() 方法

Python rpartition() 语法

rpartition() 是 Python 字符串的一个方法,它会根据指定的分割符来对字符串进行分割,然后返回一个包含 3 个元素的元组。

语法:

str.rpartition(sep)

说明:

rpartition() 方法接收单个参数。

  • sep(必选):指定分割符。

如果字符串包含指定分割符,则会返回一个包含 3 个元素的元组:第 1 个元素是左边的子串,第 2 个元素是分割符,第 3 个元素是右边的子串。

(左子串 , 分割符 , 右子串)

注意: 如果字符串中包含多个分割符,partition() 是在 “第一个” 分割符处进行分割,而 rpartition() 是在 “最后一个” 分割符处进行分割。

Python rpartition() 摘要

使用频率
修改原字符串
官方文档 查看
相关方法 partition()rsplit()

Python rpartition() 示例

接下来,我们通过几个简单的例子来讲解 Python rpartition() 方法是如何使用的。

示例 1:rpartition() 基本用法

s = 'Python*Java'
result = s.rpartition('*')
print(result)

运行结果如下。

('Python', '*', 'Java')

分析:

对于 s.rpartition('') 来说,'' 是分割符。rpartition() 会从右向左寻找分割符并将其拆开,最终返回一个包含 3 个元素的元组:左边是 'Python',中间是 '*',右边是 'Java'。

示例 2:字符串包含多个分割符

s = 'Python*Java*Go'
result = s.rpartition('*')
print(result)

运行结果如下。

('Python*Java', '*', 'Go')

分析:

如果字符串中包含多个分割符,则 rpartition() 方法只会在最后一个分割符处进行分割。

示例 3:字符串不包含分割符

s = 'PythonJavaGo'
result = s.rpartition('*')
print(result)

运行结果如下。

('', '', 'PythonJavaGo')

分析:

如果字符串不包含指定的分割符,rpartition() 会将整个字符串当成元组的最后一个元素返回,而元组的前 2 个元素则都是空字符串 ''。这与 partition() 找不到分割符时的返回顺序正好相反。

示例 4:分割符在开头或结尾

s1 = '*PythonJava'
s2 = 'PythonJava*'

print(s1.rpartition('*'))
print(s2.rpartition('*'))

运行结果如下。

('', '*', 'PythonJava')
('PythonJava', '*', '')

分析:

如果分割符在开头时,左子串为空字符串。如果分割符在末尾时,右子串为空字符串。

上一篇: partition()

下一篇: splitlines()

给站长反馈

绿叶网正在不断完善中,小伙伴们如果发现任何问题,还望多多给站长反馈,谢谢!

邮箱:lvyenet@vip.qq.com

「绿叶网」服务号
绿叶网服务号放大
关注服务号,微信也能看教程。
绿叶网服务号