python join 和 split方法簡單的說是:join用來連接字串,split剛好相反,拆分字串的。
.join()
join將容器物件拆分並以指定的字元將清單內的元素(element)連接起來,傳回字串(註:容器物件內的元素須為字元類型)
>>> a = ['no','pain','no','gain'] >>> '_ '.join(a) 'no_pain_no_gain' >>>
註:容器物件內的元素必須為字元類型
>>> b = ['I','am','no',1] >>> '_'.join(b) Traceback (most recent call last): File "<pyshell#32>", line 1, in <module> '_'.join(b) TypeError: sequence item 3: expected string, int found >>>
dict是以Key值作連接
>>> L = {'p':'P','y':'Y','t':'T','h':'H','o':'O','n':'N'} >>> '_'.join(L) 'h_o_n_p_t_y' #dict 的无序性,使元素随机连接。set 同理 >>>
.split()
# 與join相反,split以指定的字元將字串分割為單一元素(字元型別)並加入list中,傳回一個List
>>> a = 'no_pian_no_gain' >>> a.split('_') ['no', 'pian', 'no', 'gain'] >>> split是可以设定切割多少个字符的 >>> a = 'no_pian_no_gain' >>> a.split('_',2) ['no', 'pian', 'no_gain'] >>> a.split('_',1) ['no', 'pian_no_gain'] >>> a.split('_',0) ['no_pian_no_gain'] >>> a.split('_',-1) ['no', 'pian', 'no', 'gain'] >>>
可見split('_')與split(' _',-1)回傳的結果是一致的
下面透過一個範例來跟大家講下python join 和split使用方法
1.join用法範例
#>>>li = ['my','name','is','bob'] >>>' '.join(li) 'my name is bob' >>>'_'.join(li) 'my_name_is_bob' >>> s = ['my','name','is','bob'] >>> ' '.join(s) 'my name is bob' >>> '..'.join(s) 'my..name..is..bob'
2.split用法範例
>>> b = 'my..name..is..bob' >>> b.split() ['my..name..is..bob'] >>> b.split("..") ['my', 'name', 'is', 'bob'] >>> b.split("..",0) ['my..name..is..bob'] >>> b.split("..",1) ['my', 'name..is..bob'] >>> b.split("..",2) ['my', 'name', 'is..bob'] >>> b.split("..",-1) ['my', 'name', 'is', 'bob']
可以看出b.split("..",-1 )等價於b.split("..")
更多淺析Python中join 和split相關文章請關注PHP中文網!