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’中,发现没有。则将其返回,结束。
个人愚见,不知正确与否。若不对,欢迎批评指正
python中strip()函数的理解的更多相关文章
- Python中strip()函数
在python API中这样解释strip()函数:
- python中strip函数的用法
python中往往使用剥除函数strip()来对用户的输入进行清理.strip函数的最一般形式为: str.strip('序列') 其中,序列是一段字符串,该函数表示从头或者从尾部开始进行扫描,如果扫 ...
- 对于Python中回调函数的理解
关于回调函数,网上有很多说明和各种解释,多数在尝试用语言描述.我认为,如果对各个角色之间的关系不清楚,如果没有相关的编程需求,那么语言便非常无力,很难理解. 这是360百科的解释: 在计算机程序设计中 ...
- python中Strip()函数的用法
Python strip() 方法用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列. 注意:该方法只能删除开头或是结尾的字符,不能删除中间部分的字符. str.strip([chars]) ...
- 什么是工厂函数?Python 中工厂函数怎么理解?(转)
所谓工厂函数就是指这些内建函数都是类对象(实际上是类), 当你调用它们时,实际上是创建了一个类实例. type():查看类型
- Python中strip()、lstrip()、rstrip()函数的用法
Python中使用函数strip().lstrip().rstrip()来剔除字符串前后的特定字符 函数语法为:str.strip(chars) 返回值是一个新的字符串,不更改源字符串 其中,参数ch ...
- python中strip,lstrip,rstrip简介
一.起因 今天在做角色控制中,有一个地方用到rstrip,判断用户请求的url是否与数据库对应可用权限中url相符. if request.path == x.url or request.path. ...
- Python中split()函数的用法及实际使用示例
Python中split()函数,通常用于将字符串切片并转换为列表. 一.函数说明: split():语法:str.split(str="",num=string.count(st ...
- Python 中的函数
学了 Python 中的数据类型,语句,接下来就来说一下 Python 中的函数,函数是结构化编程的核心.我们使用函数可以增加程序的可读性.自定义函数时使用关键字def 函数由多条语句组成.在定义函数 ...
随机推荐
- web服务之http
HTTP协议 HTTP协议,全称HyperText Transfer Protocol即超文本传输协议,是互联网中最常用的一种网络协议.HTTP协议是互联网上的通信协议方案之一.它有很多的应用, 但最 ...
- C#将图片进行马赛克处理
/// <summary> /// 马赛克处理 /// </summary> /// <param name="bitmap"></par ...
- 使用PyQt4制作一个正则表达式测试小工具
最近在做一些网络爬虫的时候,会经常用到正则表达式.为了写出正确的正则表达式,我经常在这个网站上进行测试:Regex Tester.这个页面上面一个输入框输入正则表达式,下面一个输入框输入测试数据,上面 ...
- springBoot 读取配置文件yml中的信息
yml中自定义一些变量 var: analyze_url: test ocr_url: test microsoft_key: test 映射到类变量中 @Getter @Component publ ...
- Nginx修改版本信息或隐藏版本号
一,隐藏版本号.首先说明,这个是某一方面隐藏,不是彻底隐藏.未隐藏之前查看nginx信息: 隐藏方法: 修改nginx.conf配置文件,在http { } 标签里边加入字段: server_toke ...
- (4)python tkinter-布局
包装布局pack() 目前对它的感觉是,当一个窗体的对象都设置完属性后,最后用它来绑定到窗体上.之后就不能再设置属性了 名称 描述 取值范围 expand 当值为“yes”时,side选项无效.组件显 ...
- Linux基础学习4
SUDO sudo 执行的重点是:『 能否使用 sudo 必须要看 /etc/sudoers 的设定值, 而可使用 sudo者是透过输入用户自己的密码来执行后续的指令串』由于能否使用与/etc/sud ...
- Oracle Forms Project For Students Free Download
After getting to much requests for a free Oracle Forms and Reports project for students, I am sharin ...
- C# 导出 数据 到Excel
/// <summary> /// 实现将数据导出至Excel, /// 在上面的代码中,我们首先将gridview绑定到指定的数据源中,然后在button1的按钮(用来做导出到EXCEL ...
- 矩阵快速幂计算hdu1575
矩阵快速幂计算和整数快速幂计算相同.在计算A^7时,7的二进制为111,从而A^7=A^(1+2+4)=A*A^2*A^4.而A^2可以由A*A得到,A^4可以由A^2*A^2得到.计算两个n阶方阵的 ...