• 技术文章 >Python技术 >Python基础教程

    你真的了解strip()、lstrip()、rstrip()函数吗?

    silencementsilencement2019-07-18 09:55:40原创2084

    Python中有三个去除头尾字符、空白符的函数,它们依次为:

    strip: 用来去除头尾字符、空白符(包括\n、\r、\t、' ',即:换行、回车、制表符、空格)

    lstrip:用来去除开头字符、空白符(包括\n、\r、\t、' ',即:换行、回车、制表符、空格)

    rstrip:用来去除结尾字符、空白符(包括\n、\r、\t、' ',即:换行、回车、制表符、空格)

    从字面可以看出r=right,l=left,strip、rstrip、lstrip是开发中常用的字符串格式化的方法。

    注意:这些函数都只会删除头和尾的字符,中间的不会删除。

    函数语法分别为:

    string.strip([chars])
    string.lstrip([chars])
    string.rstrip([chars])

    参数chars是可选的,当chars为空,默认删除string头尾的空白符(包括\n、\r、\t、' ')

    当chars不为空时,chars看成一个的字符的列表,是否会删除的前提是从字符串最开头和最结尾是不是包含要删除的字符,如果有就会继续处理,没有的话是不会删除中间的字符的。

    返回值:去除头尾字符(或空白符)的string副本,string本身不会发生改变。

    适用Python版本: Python2,Python3都支持,且用法相同

    代码实例:

    1. 当chars为空时,默认删除空白符(包括'\n', '\r', '\t', ' ')

    >>> name = ' www.pythontab.com '
    >>> name
    ' www.pythontab.com '
    >>> name.strip() #删除头尾空格
    'www.pythontab.com'
    >>> name.lstrip() #删除开头空格
    'www.pythontab.com '
    >>> name.rstrip() #删除结尾空格
    ' www.pythontab.com'

    2.当chars不为空时,函数会被chars解成一个个的字符,然后将这些字符去掉。

    >>> name = '-# www.pythontab.com #-' 
    >>> name
    '-# www.pythontab.com #-' 
    >>> name.strip('#-') #删除开头和结尾的#和-,空格被保留了
    ' www.pythontab.com '
    >>> 
    >>> name.lstrip('12') #删除开头的#和-
    ' www.pythontab.com #-' 
    >>> name.rstrip('12') #删除结尾的#和-
    '-# www.pythontab.com '

    注意:在chars设置了值以后,它会把#-看成两个单独的字符,所以和#-的顺序无关,并且这时候空白符(包括\n、\r、\t、' ',即:换行、回车、制表符、空格)就不会被删除了。

    专题推荐:strip
    品易云
    上一篇:讲解Python3内置模块之json编码解码方法 下一篇:深入理解python之self

    相关文章推荐

    • 初学者必看的Python模块讲解• Python和单元测试那些事儿

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网