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

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

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

>>> 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内的字符为止。

python中strip()的陷阱相关推荐

  1. python中strip的用法_Python中你不知道的strip()函数的妙用

    [开胃小菜] 当提到python中strip方法,想必凡接触过python的同行都知道它主要用来切除空格.有以下两种方法来实现. 方法一:用内置函数if name == 'main' : str = ...

  2. Python 中strip()方法怎么用?

    Python strip() 方法用于去除字符串开头和结尾处指定的字符(默认为空格或换行符)或字符序列,不会去除字符串中间对应的字符. 相关函数有lstrip()和rstrip() .用法与strip ...

  3. python中strip是什么意思啊_Python中的strip()的理解

    在看到Python中strip的时候产生了疑问 strip() 用于移除字符串头尾指定的字符(默认为空格) 开始测试: >>> s = 'ncy_123.python' >&g ...

  4. python中strip、startswith、endswith

    python中strip.startswith.endswith strip(rm)用来删除元素内的空白符: rm对应要删除空白符的元素,当rm为空(strip())时删除所有元素的空白符 start ...

  5. python中strip是什么意思啊_python中的strip是什么意思

    Python中strip() 方法用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列. 注意:该方法只能删除开头或是结尾的字符,不能删除中间部分的字符. 它的函数原型:string.stri ...

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

    python strip()函数 介绍,需要的朋友可以参考一下 函数原型 声明:s为字符串,rm为要删除的字符序列 s.strip(rm) 删除s字符串中开头.结尾处,位于 rm删除序列的字符 s.l ...

  7. python中strip的用法

    python中strip用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列. 注意:该方法只能删除开头或是结尾的字符,不能删除中间部分的字符. 如下: >>> a=&quo ...

  8. python中strip() 函数和 split() 函数的理解

    原文转自:http://blog.csdn.net/shenwanjiang111/article/details/48158749 一直以来都分不清楚strip和split的功能,实际上strip是 ...

  9. Python中strip函数几种用法

    strip()方法删除多余空格: 用户输入数据时,很有可能会无意中输入多余的空格,或者在一些场景中,字符串前后不允许出现空格和特殊字符,此时就需要去除字符串中的空格和特殊字符. 这里的特殊字符,指的是 ...

最新文章

  1. 微软MSN推出新一代Live服务 能离线编辑博客
  2. Java8 日期/时间(Date Time)API指南
  3. 【Go API 开发实战 3】API 流程和代码结构
  4. ES 在数据量很大的情况下如何提高查询效率
  5. java编程中的持有对方引用是什么意思?有什么作用?
  6. 【翻译】在Ext JS 6通用应用程序中使用既共享又特定于视图的代码
  7. C Tricks(十四)—— 余数
  8. python入门--斐波那契数列
  9. 分享:开源货币新世界
  10. vue组件挂载到全局方法
  11. QFIL刷机失败Download Fail:Sahara Fail:QSaharaServer Fail:Process fail
  12. 2022-2027年中国办公设备租赁市场竞争态势及行业投资潜力预测报告
  13. dwg如何转换成pdf?
  14. jane street market prediction 冠军方案 经验分享 (1/3)
  15. numpy不对等切分数组
  16. 利用java的for循环画一棵圣诞树
  17. 3dsMax学习笔记06_用VRayMtl材质制作室外雕塑
  18. html 鼠标放上去变色,css3 鼠标经过div背景变色
  19. Facebook三方登陆流程
  20. cpu和gpu各自的作用

热门文章

  1. 一起玩树莓派3+手把手带您入门树莓派(3000字+超详细图解版)
  2. Tensorflow遇到的问题InvalidArgumentError: Graph execution error:2 root error(s) found.解决方法
  3. win10系统运行python虚拟环境执行ll_env\Scripts\activate : 无法加载文件的解决方法(亲测有效)
  4. 通信网络基础期末复习-第三章-网络的时延分析
  5. android 7 蓝牙版本,[Android]Android什么版本开始支持蓝牙4.2?答案:Android 7.0
  6. Python后端转JAVA最快多久_PHP多久能学会?比java,python难还是简单呢?
  7. cad指示箭头快捷键命令_CAD快捷键命令大全
  8. windows文件服务器双机热备_遇到ZFS文件系统如此棘手的问题,这种办法简单又高效!...
  9. ofstream、ifstream、fstream
  10. java rgb hsl_RGB、HSB、HSL 互相转换算法