Python3中strip()、lstrip()、rstrip()用法详解

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 = ' abcdefg '
>>> name
' abcdefg '
>>> name.strip() #删除头尾空格
'abcdefg'
>>> name.lstrip() #删除开头空格
'abcdefg '
>>> name.rstrip() #删除结尾空格
' abcdefg'

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

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

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

原文来源于:http://www.studyta.cn/Python/136.html

posted @   £锦尐々  阅读(190)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示