Python String rpartition() 函数用法

2023-09-17 22:22:36

rpartition() 方法在参数sep最后一次出现指定的字符串分隔符时拆分字符串,并返回一个包含三个元素的元组:分隔符之前的部分、分隔符本身和分隔符之后的部分。

语法:

str.rpartition(sep)

参数:

sep:(必需)字符串分隔符。

返回值:

  1. 返回包含三个元素的元组
  2. 分隔符前面的部分作为第一个元素,分隔符本身作为第二个元素,分隔符
  3. 之后的部分作为第三个元素(如果找到指定的分隔符)。
  4. 如果未找到指定的分隔符,则返回字符串本身作为第一个元素和两个空字符串元素。

下面的示例演示 rpartition() 方法的简单用法。

mystr = 'Hello World'
print(mystr.rpartition('o'))
print(mystr.rpartition('l'))
print(mystr.rpartition('W'))

输出:

('Hello W', 'o', 'rld')
('Hello Wor', 'l', 'd')
('Hello ', 'W', 'orld')

在上面的示例中,mystr.rpartition('o')从最后一个出现的"o"中分离出一个字符串,即"Hello World"。 同样,mystr.rpartition('l')从最后一个"Hello World"中分离出来。

rpartition()方法搜索区分大小写。它将"教程"和"教程"视为两个单独的词,如下所示。

mystr = 'python114.com'
print(mystr.rpartition('t'))
print(mystr.rpartition('T'))

输出:

('Tu', 't', 'orialsTeacher')
('Tutorials', 'T', 'eacher')

在上面的示例中,"t"和"T"被视为两个不同的分隔符,因此返回两个不同的元组。 请注意,如果在字符串的开头找到分隔符字符串,则返回元组的第一个元素将为空,如上例中的"教程"分隔符。

如果字符串中不存在分隔符,则元组包含原始字符串和两个空字符串,如下所示。 如果分隔符是空字符串,则 rpartition() 方法将抛出ValueError,如下所示。

mystr = 'Hello World'
print(mystr.rpartition('s'))
mystr = 'Hello World'
print(mystr.rpartition('')) # raises ValueError

输出:

('', '', 'Hello World')
ValueError: empty separator