Python中的字符串操作函數split 和 join能夠實現字符串和列表之間的簡單轉換,
使用 .split()可以將字符串中特定部分以多個字符的形式,存儲成列表
1 def split(self, *args, **kwargs): # real signature unknown 2 """ 3 Return a list of the words in the string, using sep as the delimiter string. 4 5 sep 6 The delimiter according which to split the string. 7 None (the default value) means split according to any whitespace, 8 and discard empty strings from the result. 9 maxsplit 10 Maximum number of splits to do. 11 -1 (the default value) means no limit. 12 """ 13 pass
如上所說,split()函數,使用字符串中的字符作為分隔符(sep),返回字符串分詞的列表(不含有作為分隔符的字符),如果分隔符為None,則以字符串中的空格作為分隔符;同時還可以傳入一個int參數
作為分隔的次數,(默認值 為 -1,不限制次數)
eg:
>>>:s = 'Process finished with exit code 0'
>>>:s.split()# sep:None;maxsplit:-1.空格作為分隔符,分隔所有 ['Process', 'finished', 'with', 'exit', 'code', '0'] >>>:s.split('i')#sep:‘i’;maxsplit:-1.‘i’作為分隔符,分割所有 ['Process f', 'n', 'shed w', 'th ex', 't code 0'] >>>:s.split('i', 2)#sep:‘i’;maxsplit:2.‘i’作為分隔符,分割兩次 ['Process f', 'n', 'shed with exit code 0']
再進一步:
>>>:s = 'Process finished with exiiit code 0' >>>:s.split('i') ['Process f', 'n', 'shed w', 'th ex', '', '', 't code 0']
使用join()可以將列表中的字符串類型數據,組合成一個字符串:
1 def join(self, ab=None, pq=None, rs=None): # real signature unknown; restored from __doc__ 2 """ 3 Concatenate any number of strings. 4 5 The string whose method is called is inserted in between each given string. 6 The result is returned as a new string. 7 8 Example: '.'.join(['ab', 'pq', 'rs']) -> 'ab.pq.rs' 9 """ 10 pass
如上所說連接任意數量的字符串,將字符串插入到被調用的兩兩字符串間,返回一個新的字符串。
總結:
s = 'abcdabcd' ls = s.split('c') s2 = 'c'.join(ls) s = s2
上面利用兩個函數互相轉化,使用split()由字符串得到新列表,再使用join()由列表得到新字符串,