python中的split()

一、split()函数

split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表。

语法:str.split(str="",num=string.count(str))[n]

参数说明:

  str :表示分隔符 ,默认为空格、换行(\n)、制表符(\t)等,不过不能为空('')。若字符串中没有分隔符,则把整个字符串作为列表的一个元素返回。

num:表示分割次数。如果存在参数num,则仅分隔成 num+1 个子字符串,并且每一个子字符串可以赋给新的变量;

      如果分割次数大于字符串的分隔符数,按最大分割符数进行分割,程序不会报错。

  [n]  :   表示选取第n个分片。

二、实例

split()的使用方法:

a = "line1_Dylan\nline2 line3\tline4 line5*line6*line7*line8"
print(a.split())#默认以空格、\n、\t为分隔符
print(a.split(' ',1))# 以空格为分隔符,分隔成两个

 以上实例返回结果:

['line1_Dylan', 'line2', 'line3', 'line4', 'line5*line6*line7*line8']
['line1_Dylan\nline2', 'line3\tline4 line5*line6*line7*line8']

 以*为分割符,指定分割参数2,返回三个参数列表:

a = "line1_Dylan\nline2 line3\tline4 line5*line6*line7*line8"
print(a.split('*',2))
#返回结果
# ['line1_Dylan\nline2 line3\tline4 line5', 'line6', 'line7*line8']

 指定分割次数大于分割符数,返回最大分割数的结果,程序不报错:

a = "line1_Dylan\nline2 line3\tline4 line5*line6*line7*line8"
print(a.split('*',5))
#返回结果
# ['line1_Dylan\nline2 line3\tline4 line5', 'line6', 'line7', 'line8']

 分割两次,并取序列为1的项:

a = "line1_Dylan line2 line3 line4 line5 line6 line7 line8"
print(a.split(' ',4)[1])
#返回结果
#line2

 分割最多次(与实际不加num参数的相同):

a = "line1_Dylan line2 line3 line4 line5 line6 line7 line8"
print(a.split(' ',-1))
#返回结果
#['line1_Dylan', 'line2', 'line3', 'line4', 'line5', 'line6', 'line7', 'line8']

 分割两次次,把分割后三部分保存到三个变量中去:

a = "line1_Dylan line2 line3"
a1,a2,a3= a.split(' ',2)
print(a1)
print(a2)
print(a3)
#返回结果
#line1_Dylan
# line2
# line3

 注:指定分割符时只能指定一个分割符,不能指定多个,指定多个会报错。

 

posted @ 2019-03-23 17:11  Dylan123  阅读(1478)  评论(0)    收藏  举报