首页  >  文章  >  后端开发  >  python中strip()鲜为人知的陷阱

python中strip()鲜为人知的陷阱

Y2J
Y2J原创
2017-05-18 14:29:582106浏览

使用Python的时候,发现了一个strip()命令的坑。

之前对strip(X)的理解是:去除开头和结尾包含的"X"字符串,如果不包含则不去除。

这里面的一个坑是:python对字符串X的处理是一个set,而不是一个固定顺序的字符串。也就是说,是把X拆开成由单个字母组成的set来看待的,如果被strip()的字符串在左右边包含任意一个该set中的字符,都会被strip()掉。示例如下:

[python] view plain copy
 
>>> a="abc_1213"  
>>> a.strip('abc_')  
'1213'  
>>> a.strip('ba_c')  
'1213'  
>>> a.strip('zxcvbnmasdfghjklpoiuytrewq')  
'_1213'  
>>> a.strip('zxcvbnmasdfg_hjklpoiuytrewq')  
'1213'

最开始,个人的理解是第一种情况。strip('abc_')之后,只会去除左边的"abc_"。

实验之后,确认,是把要strip的字符串当做了一个set来处理的。只要是左右两边的字符在该set内,都会被逐一去除,直到遇到第一个不在该set内的字符为止。

【相关推荐】

1. Python免费视频教程

2. python基础入门之教你如何用strip()函数 去空格\n\r\t

3. 详解python中strip()和split()的使用方法

4. 详解python中strip函数的使用场景

5. Python中你不知道的strip()函数的妙用

以上是python中strip()鲜为人知的陷阱的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn