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 \"\", line 1, in 
  \'_\'.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(\”..\”)