首頁  >  文章  >  後端開發  >  淺析Python中join 和 split

淺析Python中join 和 split

高洛峰
高洛峰原創
2017-03-01 13:51:291059瀏覽

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中文網!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn