Python 字符串 rsplit() 方法

Python rsplit() 语法

rsplit() 是 Python 字符串的一个方法,它会根据某个分割符 “从右到左” 来将字符串分割成多个子串,然后将它们作为列表返回。

语法:

str.rsplit(separator=None, maxsplit=-1)

说明:

rsplit() 方法接收以下 2 个参数。

  • separator(可选,默认值:None):用于分割的符号。如果 separator 省略,则按任意空白字符(空格、换行、制表符等)分割,其中连续空白符会被视为单个分隔符,并且字符串开头和末尾的空白字符会被忽略。
  • maxsplit(可选,默认值:-1):一个非负整数,指定最大分割次数。如果省略 maxsplit 参数或设置为 -1,则表示不限制分割次数。

注意: 如果 maxsplit 参数未指定,则其行为与 split() 方法完全一样。

Python rsplit() 摘要

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

Python rsplit() 示例

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

示例 1:rsplit() 不带 maxsplit 参数

s = 'Python,C++,Java,Go,Rust'
print(s.split(','))
print(s.rsplit(','))

运行结果如下。

['Python', 'C++', 'Java', 'Go', 'Rust']
['Python', 'C++', 'Java', 'Go', 'Rust']

分析:

从结果可以看到,如果 rsplit() 不指定 maxsplit 参数,返回结果与 split() 的相同。

示例 2:rsplit() 带 maxsplit 参数

s = 'Python,C++,Java,Go,Rust'
print(s.split(',', 2))
print(s.rsplit(',', 2))

运行结果如下。

['Python', 'C++', 'Java,Go,Rust']
['Python,C++,Java', 'Go', 'Rust']

分析:

当指定 maxsplit 参数时,split() 方法是 “从左开始” 分割,而 rsplit() 方法是 “从右开始” 分割。

示例 3:rsplit() 使用默认分割符

s = 'Python  C++    Java'
print(s.rsplit())

运行结果如下。

['Python', 'C++', 'Java']

分析:

如果没有指定 separator 参数时,则表示按连续空白符分割。需要注意的是,下面 2 种方式是不等价的。

# 方式 1
s.rsplit()

# 方式 2
s.rsplit(' ')

上一篇: split()

下一篇: partition()

给站长反馈

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

邮箱:lvyenet@vip.qq.com

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