码迷,mamicode.com
首页 > 编程语言 > 详细

python中strip()函数的理解

时间:2017-07-23 12:34:31      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:为什么   block   data   结果   code   结束   pos   script   abc   

1、strip()函数

函数原型
声明:s为字符串。rm为要删除的字符序列
s.strip(rm) :删除s字符串中开头、结尾处。位于 rm删除序列的字符
s.lstrip(rm) :删除s字符串中开头处。位于 rm删除序列的字符
s.rstrip(rm) :删除s字符串中结尾处,位于 rm删除序列的字符

如今来分析s.strip(rm)这个函数。

  • 如今如果s=‘abcd’
    则 s.strip(‘bd’)————->’abc’
  • 而s.strip(‘ba’)和s.strip(‘ab’)的结果是一样的,都是’cd’
  • 而s.strip(‘bd’)得到的结果是’abc’,于是我就不理解了
  • 于是我继续尝试,发现s.strip(‘bac’)———->’d’

非常多博客都是这样说明了下,然后就没有然后了,都没有解释究竟是怎么工作的,为什么会产生这种原因,不知是过于简单所以别人都没有进行解说还是我过于笨拙。没能理解。

产生这种原因我的理解例如以下:s.strip(rm)首先检查字符串s中的首尾字符是否在rm中。如存在则将字符从中删除,并用删除字符后的字符串继续检查首尾字符是否出如今rm中。如此下去,并返回最后的结果。


上面可能说的比較抽象,以上面的样例 s.strip(‘ba’)为例,经历了几下几步

  • 第一步:字符串s=‘abcd’先检查其首尾字符是否出如今rm=’ba’中,发现首字符’a’存在于rm=’ba’中,于是将’abcd’中的’a’字符从中删除,得到’bcd’字符串
  • 第二步:再继续检查所得字符串’bcd’的首尾字符是否出如今rm=’ba’中。发现首字符’b’存在,则将’bcd’中的字符’b’从中删除,得到’cd’字符串
  • 第三步:再继续检查所得字符串’cd’中的首尾字符是否小狐仙在rm=’ba’中,发现没有。则将其返回,结束。

个人愚见,不知正确与否。若不对,欢迎批评指正

python中strip()函数的理解

标签:为什么   block   data   结果   code   结束   pos   script   abc   

原文地址:http://www.cnblogs.com/wzjhoutai/p/7223978.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!