Python中split()方法常見用法總結(jié)大全
一、基本語法
split()是 Python 中字符串(str
)對象的一個非常強大的內(nèi)置方法,用于將字符串按照指定的分隔符拆分成多個子字符串,并返回一個包含這些子字符串的列表。
str.split(sep = None, maxsplit = -1)
text = "a-b-c-d-e-f" parts = text.split('-', 3) print(parts) # 輸出: ['a', 'b', 'c', 'd-e-f']
1. sep(可選)
指定用于分割字符串的分隔符。如果未指定,默認(rèn)使用任何空白字符(如空格、制表符 \t
、換行符 等)作為分隔符
2. maxsplit(可選)
指定分割的最大次數(shù)。如果提供了該參數(shù),字符串將被分割成 maxsplit + 1
個子字符串。默認(rèn)值為 -1
,表示不限制分割次數(shù),即盡可能多地分割。
二、常見用法示例
1. 使用默認(rèn)分隔符(空白)
當(dāng)不指定 sep
參數(shù)時,split()
會使用任何空白字符作為分隔符,并自動忽略多余的空格。
text = "Hello World! How are you?" words = text.split() print(words) # ['Hello', 'World!', 'How', 'are', 'you?']
2. 指定分隔符
text = "apple,banana,cherry,dates" fruits = text.split(',') print(fruits) # ['apple', 'banana', 'cherry', 'dates']
3. 使用多個字符作為分隔符(結(jié)合正則使用)
import re text = "one--two---three----four" parts = re.split('--+', text) print(parts) # ['one', 'two', 'three', 'four']
4. 指定最大分割次數(shù)
text = "one two three four five" parts = text.split(' ', 2) print(parts) # ['one', 'two', 'three four five']
5. 分割空字符串
# 分割空字符串,不指定分隔符 print("".split()) # 輸出: [] # 分割空字符串,指定分隔符 print("".split(',')) # 輸出: [''] # 分割只有一個字符的字符串 print("a".split(',')) # 輸出: ['a']
6. 處理連續(xù)的分隔符
text = "one,,two,three,,four" parts = text.split(',') print(parts) # ['one', '', 'two', 'three', '', 'four']
如果需要忽略連續(xù)的分隔符,可以使用正則表達(dá)式:
import re text = "one,,two,three,,four" parts = re.split(r',+', text) print(parts) # ['one', 'two', 'three', 'four']
三、高級用法
1. rsplit()
rsplit()
方法與 split()
類似,但從字符串的右側(cè)開始分割。
text = "one two three four" # 從左側(cè)分割 print(text.split(' ', 2)) # 輸出: ['one', 'two', 'three four'] # 從右側(cè)分割 print(text.rsplit(' ', 2)) # 輸出: ['one two', 'three', 'four']
2. 分割包含多種分隔符的字符串
使用正則表達(dá)式模塊 re
可以實現(xiàn)復(fù)雜的分隔符分割。
import re text = "apple;banana, cherry|dates" parts = re.split(r'[;,|\s]+', text) print(parts) # ['apple', 'banana', 'cherry', 'dates']
4. 分割多行字符串
splitlines()
方法用于按照行邊界拆分多行字符串,而 split('')
也可以實現(xiàn)類似功能,但 splitlines()
更加全面,能夠處理不同平臺的換行符。
text = "Hello\nWorld\r Python\rAnother line" # 使用 split(' ') print(text.split(' ')) # 輸出: ['Hello', 'World\r', 'Python\rAnother line'] # 使用 splitlines() print(text.splitlines()) # 輸出: ['Hello', 'World', 'Python', 'Another line']
5. 分隔符在字符串的開頭或結(jié)尾
如果分隔符出現(xiàn)在字符串的開頭或結(jié)尾,split()
會在結(jié)果中包含空字符串。
text = ",apple,banana,,cherry," parts = text.split(',') print(parts) # 輸出: ['', 'apple', 'banana', '', 'cherry', '']
如果不需要開頭和結(jié)尾的空字符串,可以結(jié)合 strip()
方法使用:
parts = text.strip(',').split(',') print(parts) # 輸出: ['apple', 'banana', '', 'cherry']
6. 處理Unicode字符
split()
方法同樣適用于包含 Unicode 字符的字符串。
text = "你好,世界,Python" parts = text.split(',') print(parts) # 輸出: ['你好', '世界', 'Python']
總結(jié)
到此這篇關(guān)于Python中split()方法常見用法總結(jié)的文章就介紹到這了,更多相關(guān)Python split()方法用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python解析JSON數(shù)據(jù)的方法簡單例子
這篇文章主要給大家介紹了關(guān)于Python解析JSON數(shù)據(jù)的方法,解析JSON文件是Python中非常常見的操作,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-09-09Python opencv實現(xiàn)人眼/人臉識別以及實時打碼處理
這篇文章主要為大家詳細(xì)介紹了Python opencv實現(xiàn)人眼、人臉識別,以及實時打碼處理,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-04-04