python中split()函式講解
阿新 • • 發佈:2019-01-28
本文講述的是string.split(s[, sep[, maxsplit]]),針對string型別的split()函式。它主要是切割字串,結果返回由字串元素組成的一個列表,具體怎麼使用看下面的程式碼。
1. 無引數的情況
a="my name is zhangkang"
b="my\nname\nis\nzhangkang"
c="my\tname\tis\tzhangkang"
a=a.split()
b=b.split()
c=c.split()
print(a)
print(b)
print(c)
輸出:
['my', 'name', 'is', 'zhangkang' ]
['my', 'name', 'is', 'zhangkang']
['my', 'name', 'is', 'zhangkang']
當沒有引數的情況下,函式預設會以空格,回車符,空格符等作為分割條件。
2. 有引數的情況
d="my,name,is,zhangkang"
e="my;name;is;zhangkang"
f="my-name-is-zhangkang"
d=d.split(",")
e=e.split(";")
f=f.split("-")
print(d)
print(e)
print(f)
輸出:
['my', 'name', 'is', 'zhangkang' ]
['my', 'name', 'is', 'zhangkang']
['my', 'name', 'is', 'zhangkang']
函式會以引數為分割條件,把字串進行分割,得到的每個分割段作為列表的元素返回。
3. 當具有兩個引數的情況
a="My,name,is,zhangkang,and,I,am,a,student"
b1=a.split(",",1)
b2=a.split(",",2)
b8=a.split(",",8)
b9=a.split(",",9)
print(b1)
print(b2)
print(b8)
print(b9)
輸出:
['My', 'name,is,zhangkang,and,I,am,a,student' ]
['My', 'name', 'is,zhangkang,and,I,am,a,student']
['My', 'name', 'is', 'zhangkang', 'and', 'I', 'am', 'a', 'student']
['My', 'name', 'is', 'zhangkang', 'and', 'I', 'am', 'a', 'student']
第二個引數的意思是你想分多少次,b1,b2,b8都好理解。有人可能會問b9那個是怎麼回事,最大隻能分成9段呀,分8次就行了。沒錯,但是當分第8次的時候,最後一個分割段是”student”,再對“student”進行條件為“,”分割的時候是分不了的,也就是說還是原來的字串不動。意思就是第二個引數值超過最大分割次數其實是沒有意思的,不過程式不會報錯!