深入浅析Python中join 和 split详解(推荐)

yipeiwu_com6年前Python基础

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中面向对象编程的相关知识

深入讲解Python中面向对象编程的相关知识

 Python从第一天开始就是面向对象的语言。正因为如此,创建和使用类和对象是非常地容易。本章将帮助您在使用Python面向对象编程的技术方面所有提高。 如果没有任何以往面向对...

Python基础学习之常见的内建函数整理

 前言 Python针对众多的类型,提供了众多的内建函数来处理,这些内建函数功用在于其往往可对多种类型对象进行类似的操作,即多种类型对象的共有的操作,下面话不多说了,来一看看详...

selenium+python实现自动登陆QQ邮箱并发送邮件功能

selenium+python实现自动登陆QQ邮箱并发送邮件功能

本期做一个selenium详细实例,会把我在元素定位中遇到的一些阻塞和经验分享给大家。 (浏览器为Chrome) (如果只需要最终的完整代码,请直接跳转到文章最后) 浏览器打开QQ邮箱...

Numpy掩码式数组详解

数据很大形况下是凌乱的,并且含有空白的或者无法处理的字符,掩码式数组可以很好的忽略残缺的或者是无效的数据点。掩码式数组由一个正常数组与一个布尔式数组组成,若布尔数组中为Ture,则表示正...

python Django里CSRF 对应策略详解

CSRF(Cross Site Request Forgery, 跨站域请求伪造)是一种网络的×××方式。 我的理解是,比如你访问过招商银行的网站并登陆之后,你的cookie信息暂时不会...