zoukankan      html  css  js  c++  java
  • python中strip()函数的理解

    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’中,发现没有。则将其返回,结束。

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

  • 相关阅读:
    AOV网和AOE网对比
    AOV网和AOE网对比
    Python类型总结
    Python数据结构
    Django之认证系统
    day22笔记
    数据库概念知识
    pymsql模块使用
    多表查询(子查询)
    多表查询(链接查询)
  • 原文地址:https://www.cnblogs.com/wzjhoutai/p/7223978.html
Copyright © 2011-2022 走看看