麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > Python > 正文

Python rpartition()函數

2023-04-24 19:21:41
字體:
來源:轉載
供稿:網友

Python rpartition()字符串處理函數的作用與partition()函數功能相似,只不過其是從右端開始匹配搜索串。

Python rpartition()函數以搜索字符串最后出現的位置為分割,將源字符串分為三部分,并以元組的形式返回分割后的結果,其中元組中的第一個字符串元素是搜索子串之前的內容,第二個字符串元素是搜索子串本身,第三個字符串元素是搜索子串之后的內容。

rpartition()語法格式

str.rpartition(sep)

str是要被搜索的字符串,該函數將在str中找到sep的位置,并以sep為分割,將str分割為三部分。

參數

sep是一個字符串類型的參數,用于指定作為分割作用的字符串。

返回值

該函數返回一個三元組類型,元組中包含的三部分分別為:

sep之前的部分;

sep本身

sep之后的部分。

Python rpartition()函數

rpartition()函數使用舉例

1、sep位于str內部

str1 = "我開始學習Python編程了。"
print(str1.rpartition("Python"))
print(str1.partition("Python"))

輸出結果:

('我開始學習', 'Python', '編程了。')
('我開始學習', 'Python', '編程了。')

從結果中可以看出,當str中僅包含一個匹配時,rpartition()函數的作用與partition()函數的輸出結果相同。

2、sep位于str的最前端

str2 = "Python是簡單易學的。"
print(str2.rpartition("Python"))
print(str2.partition("Python"))

輸出結果如下:

('', 'Python', '是簡單易學的。')
('', 'Python', '是簡單易學的。')

從上面結果可以看出,當sep位于str最前端時,rpartition()函數返回的元組中第一個元素是一個空字符串,因為sep之前沒有任何內容,這與partition()函數的作用也是相同的。

3、sep位于str最右邊

str3 = "一起來學習Python"
print(str3.rpartition("Python"))
print(str3.partition("Python"))

輸出結果如下:

('一起來學習', 'Python', '')
('一起來學習', 'Python', '')

從輸出結果可以看出,當sep位于str最右端時,返回的元組最后一個元素為空字符串,這是因為sep右邊沒有任何內容。這與partition()函數的作用完全相同。

4、str中包含多個sep

str4 = "我們在學習Python,Python是強大的。"
print(str4.rpartition("Python"))
print(str4.partition("Python"))

輸出結果如下:

('我們在學習Python,', 'Python', '是強大的。')
('我們在學習', 'Python', ',Python是強大的。')

從上面的輸出結果可以看出,rpartition()函數以最后一個"Python"為分界部分,將str4分為三部分,而partition()是以第一個"Python"為分界部分,將str4分為三部分,實際上,這也是rpartition()函數partition()函數的實質區別。

5、str中不含sep

str5 = "我學習python快5年了。"
print(str5.rpartition("Java"))
print(str5.partition("Java"))

輸出結果:

('', '', '我學習python快5年了。')
('我學習python快5年了。', '', '')

從以上的輸出結果可以看出,當str中不包含sep時,rpartition()函數返回的元組的前兩個為空字符串,這很容易理解:當rpartition()從右端往前搜索時,找到str前端也沒發現sep,則整個str作為元組中的第3個元素,sep本身不存在則為空字符串,也沒有對應的第一部分,則也為空字符串。而partition()函數返回的元組后兩個為空字符串。

6、sep不能為空字符串

str6 = "Python is good."
print(str6.rpartition(''))

輸出內容如下:

Traceback (most recent call last):
  File "D:/01Lesson/PY/rpartition.py", line 23, in <module>
    print(str6.rpartition(''))
ValueError: empty separator

從上面輸出可以看出,當sep為空字符串時會引發ValueError錯誤。

7、區分大小寫

rpartition()函數與partition()函數一樣對字符是區分大小寫的,看下面這個例子:

str7 = "Python is good,python is easy."
print(str7.rpartition('Python'))

輸出結果如下:

('', 'Python', ' is good,python is easy.')

從輸出結果可以看出,sep指定的為“Python”,第一個字母大寫,所以rpartition()實際上是以開頭的“Python”作為分割,而不是中間的那個“python”

總結

str.rpartition(sep)函數的作用是以str中最后一個出現的sep作為分割,把字符串分為三部分:sep前面的部分,sep本身和sep后面的部分。

如果str中不包含sep,則返回的三元元組中的元素是兩個空字符串和str本身。

rpartition對傳入的參數sep是區分大小寫的。

rpartition不能傳入空字符串,也不能為None,但可以是其它格式控制符,如'/r','/n'等。


如有問題,歡迎留言。如需轉載,請注明出處和本文的鏈接地址:

武林網VEVB(http://www.companysz.com)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国语自产免费精品视频在 | 久久免费激情视频 | 久久精品污 | 黄色成人在线播放 | 亚洲一区二区不卡视频 | 免费久久久 | 日韩视频精品一区 | 极品大长腿啪啪高潮露脸 | 久久亚洲综合色 | 成人免费福利 | 一区二区三区欧洲 | www.99re1.com| 亚洲一级网站 | 黄色网址在线免费 | 午夜精品久久久久久中宇 | 999精品久久久 | 免费h片 | 一级黄色在线免费观看 | 欧美成人二区 | 久草在线免费看 | 欧美日本综合 | 性欧美在线视频 | 亚洲免费高清 | 国产小视频在线观看 | 国产精品免费看 | 欧美三级日本三级少妇99 | 91短视频在线观看 | 成人毛片av在线 | 精品久久久一 | 4p嗯啊巨肉寝室调教男男视频 | 久草在线公开视频 | 黄色成人小视频 | 黄网站在线播放视频免费观看 | 久久2019中文字幕 | 国产91精品欧美 | 毛片118极品美女写真 | 久久骚 | 亚洲一区二区成人 | 免费观看黄视频 | 好吊色欧美一区二区三区四区 | 天天操天天碰 |