[Python] 移除字符串起始和结束的空白字符

最实用的函数:str.strip(), 不带参数时,将删除字符串str首尾的一切空白字符,包括空格,\t, \r, \n

str.lstrip([chars])

返回一个移除了起始字符的字符串的副本。参数chars是一个指定要移除字符集合的字符串。如果省略或为 None,默认移除空白字符。chars参数不是一个前缀,它的值的所有组合都将删除 :

>>> '   spacious   '.lstrip()
'spacious   '
>>> 'www.example.com'.lstrip('cmowz.')
'example.com'

以第二个例子为例: 从字符串左端开始,第1个字符w删除,第2个,第3个也是,第4个.同样在集合cmowz.里,所以删除,但第5个字符e不是,保留,至此,lstrip 操作结束。

str.rstrip([chars])

返回一个移除了结尾字符的字符串的副本。参数chars是一个指定要移除字符集合的字符串。如果省略或为 None,默认移除空白字符。chars参数不是一个后缀,它的值的所有组合都将删除:

>>> '   spacious   '.rstrip()
'   spacious'
>>> 'mississippi'.rstrip('ipz')
'mississ'

str.strip([chars])

返回一个移除了起始和结尾字符的字符串的副本。参数chars是一个指定要移除字符集合的字符串。如果省略或为 None,默认移除空白字符。chars参数不是一个前缀或后缀,它的值的所有组合都将删除:

>>> '   spacious   '.strip()
'spacious'
>>> 'www.example.com'.strip('cmowz.')
'example'

.strip() 如果没有参数, (或者第一个参数是None) ,将移除起始和结束的全部空白,包括空格,\t, \n, \r.
" foo\tbar \n".strip()"foo\tbar\n".strip() 结果相同,都是:foo\tbar

另一个例子:

>>> url = 'abcdc.com'
>>> print(url.strip('.com'))
abcd
>>> 

含义简单一点说,就是从字符的一端开始读字符,如果属于参数里的一个,就删除,失败就停止。字符串两端都是同样操作。

lstrip, rstrip, strip 三个函数都相似,第一个处理字符串左端,第二个右端,第三个两端。原字符串保持不变,返回的只是副本。实际使用这些函数时要使用类似于下面的写法:

my_str = my_str.strip() 

[1] https://stackoverflow.com/questions/13013734/string-strip-in-python
[2] python documentation: String Methods

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值