• Python split()方法分割字符串


    Python 中,除了可以使用一些内建函数获取字符串的相关信息外(例如 len() 函数获取字符串长度),字符串类型本身也拥有一些方法供我们使用。

    注意,这里所说的方法,指的是字符串类型 str 本身所提供的,由于涉及到类和对象的知识,初学者不必深究,
    只需要知道方法的具体用法即可。

    split() 方法可以实现将一个字符串按照指定的分隔符切分成多个子串,这些子串会被保存到列表中(不包含分隔符),作为方法的返回值反馈回来。该方法的基本语法格式如下:

    str.split(sep,maxsplit)
    

    此方法中各部分参数的含义分别是:

    str:表示要进行分割的字符串;

    sep:用于指定分隔符,可以包含多个字符。此参数默认为 None,表示所有空字符,包括空格、换行符“ ”、制表符“ ”等。

    maxsplit:可选参数,用于指定分割的次数,最后列表中子串的个数最多为 maxsplit+1。如果不指定或者指定为 -1,则表示分割次数没有限制。

    在 split 方法中,如果不指定 sep 参数,那么也不能指定 maxsplit 参数。

    同内建函数(如 len)的使用方式不同,字符串变量所拥有的方法,只能采用“字符串.方法名()”的方式调用。这里不用纠结为什么,学完类和对象之后,自然会明白。

    例如,定义一个保存php中文网网址的字符串,然后用 split() 方法根据不同的分隔符进行分隔,执行过程如下:

    >>> str = "php中文网 >>> c.biancheng.net"
    >>> str
    'php中文网 >>> c.biancheng.net'
    >>> list1 = str.split() #采用默认分隔符进行分割
    >>> list1
    ['php中文网', '>>>', 'c.biancheng.net']
    >>> list2 = str.split('>>>') #采用多个字符进行分割
    >>> list2
    ['php中文网 ', ' c.biancheng.net']
    >>> list3 = str.split('.') #采用 . 号进行分割
    >>> list3
    ['php中文网 >>> c', 'biancheng', 'net']
    >>> list4 = str.split(' ',4) #采用空格进行分割,并规定最多只能分割成 4 个子串
    >>> list4
    ['php中文网', '>>>', 'c.biancheng.net']
    >>> list5 = str.split('>') #采用 > 字符进行分割
    >>> list5
    ['php中文网 ', '', '', ' c.biancheng.net']
    >>>
    

    需要注意的是,在未指定 sep 参数时,split() 方法默认采用空字符进行分割,但当字符串中有连续的空格或其他空字符时,都会被视为一个分隔符对字符串进行分割,例如:

    >>> str = "php中文网   >>>   c.biancheng.net"  #包含 3 个连续的空格
    >>> list6 = str.split()
    >>> list6
    ['php中文网', '>>>', 'c.biancheng.net']
    >>>

    本文转载于https://www.py.cn/jishu/jichu/10831.html

  • 相关阅读:
    IKAnalyzer 源码走读
    如何查看java对象的大小
    lucene 一次查询多个id
    what's the difference between grouping and facet in lucene 3.5
    Java HashMap的死循环 以及 LRUCache的正确实现
    Docker 基础技术之 Linux namespace 源码分析
    Docker 基础技术之 Linux namespace 详解
    vhost-user 简介
    DPDK 全面分析
    vhost:一种 virtio 高性能的后端驱动实现
  • 原文地址:https://www.cnblogs.com/jsdd/p/11613121.html
Copyright © 2020-2023  润新知