在平時工作的時候,發現對於字符串分割的方法用的比較多,下面對分割字符串方法進行總結一下:
第一種:split()函數
split()函數應該說是分割字符串使用最多的函數
用法:
str.split('分割符')
通過該分割操作后,會返回一個列表。
注:當然如果你的字符串含有一個或者多個空格就直接 str.split() 就可以了
例如:
>>> a = "hello,python,Good Night"
>>> a.split(',')
['hello', 'python', 'Good Night']
第二種:splitlines()函數
splitline()函數是按“行”進行字符串分割
用法:
object.splitlines()
通過該分割操作后,會返回一個列表。
例如:
>>> a = '''I have a pen
I have a apple
apple pen
'''
>>> a.splitlines()
['I have a pen','I have a apple','apple pen']
注:a.如果上述的對象a中除了換行符,字符串前后還有空格的話,可以用strip()函數去除字符串前后的空格
b.對於splitlines()函數有一個keepends的bool型參數,當keepends為True時:分割的每 一行里尾部會有\n;當keepends為False時:不保留每行結尾的\n;
第三種:import re模塊 進行字符串多種字符的分割
當我們在處理某些字符串的時候,需要在一個字符串中進行多個字符的分割,但是對於第一種方法split()一次只可以使用一個符號進行字符串分割操作,那么我們就可以使用這種方法
用法:
先導入re模塊:import re
之后:re.split('分割符1|分割符2',objects) --> 不同的分割符用 ‘|’ 進行間隔(分割符需要進行'\'的轉義操作),然后objects為需要分割的字符串對象。
例如:
>>> e = "852317006@qq.com"
>>> import re
>>> re.split('@|\.',e)
['852317006', 'qq', 'com']
注意上面的 '.' 這個分割符進行了 '\.' 的轉義表示 '.' 進行分割。
后續還會進行補充。。。。,,
