1.split()函数
split() 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串。它是按指定的分隔符,把一个字符串分隔成指定数目的子字符串,然后把它们放入一个列表中,其中每个单词都是一个列表项。
string.split(str, max)
str – 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
max – 分割次数。规定要执行的拆分数。默认值为 -1,即“所有出现次数”。
举例如下:
#例1:
>>> a="I love China"
>>> a.split() # 分隔符为空,分割次数默认
['I', 'love', 'China']
>>>
#例2:
>>> b="I love China, and you, you"
>>> b.split(", ") # 使用逗号和空格作为分隔符
['I love China', 'and you', 'you']
>>>
#例3:
>>> c="I#love#China#andyou#you"
>>> c.split("#") #使用#作为分隔符
['I', 'love', 'China', 'andyou', 'you']
>>>
#例4:
>>> d="I#love#China#andyou#you"
>>> d.split("#",1) # 将 max值为 1,将返回包含 2 个元素的列表
['I', 'love#China#andyou#you']
>>>
#例5:
>>> e="with great power comes great responsibility. I love China and you you"
>>> e.split(" ",15) #空格为分隔符
['with', 'great', 'power', 'comes', 'great', 'responsibility.', 'I', 'love', 'China', 'and', 'you', 'you']
>>>
总结:
(1)split()有两个参数,第一个参数是分隔符,如果不指定,则默认以空格、换行、制表符为分隔符,第二个参数为分隔次数,如果不指定,则跟据字符串中有多少个分隔符,就分隔多少次。
(2)例4字符串d指定井号#为分隔符,只分隔1次,所以在I和love之间分隔一次,后面的都不分隔。
(3)例5字符串e这个字符串中总共有15个空格,如果指定分隔次数大于15,则Python也不会报错,还是以分隔符的总数进行分隔。
2.split()函数错误用法
split()函数默认分隔符为空时,易犯错误:
错误写法:
>>> a="I love China you you"
>>> a.split("") #split()函数默认为空,括号内不用加双引号
Traceback (most recent call last):
File "", line 1, in
a.split("")
ValueError: empty separator
>>>
split()函数正确表达:
>>> a="I love China you you"
>>> a.split() #分隔符默认为空
['I', 'love', 'China', 'you', 'you']
>>>
>>> a="I love China you you"
>>> a.split(" ") #split()函数里面双引号中间有空格
['I', 'love', 'China', 'you', 'you']
>>>
>>> a="I love China you you"
>>> a.split(" ",10)
['I', 'love', 'China', 'you', 'you']
>>>