浅谈python中截取字符函数strip,lstrip,rstrip

yipeiwu_com5年前Python基础

一、起因

今天在做角色控制中,有一个地方用到rstrip,判断用户请求的url是否与数据库对应可用权限中url相符。

if request.path == x.url or request.path.rstrip('/') == x.url: #精确匹配,判断request.path是否与permission表中的某一条相符
借此机会总结一下python中strip,lstrip和rstrip。

二、介绍

Python中strip用于去除字符串的首位字符,同理,lstrip用于去除左边的字符,rstrip用于去除右边的字符。

这三个参数都可以传入一个参数,指定要去除的首尾字符。

需要注意的是,传入的是一个字符数组,编译器去除两端所有匹配的字符,直到没有匹配的字符,比如:

>>> testString="saaaay yes no yaaaass"
>>> print testString.strip('say')
 yes no 
>>> 

可见,testString依次被去除首尾在['s','a','y']数组内的字符,直到剩余字符不再数组内。所以输出yes no。

Note:

当没有传入参数时,默认去除首尾空格。

lstrip和rstrip原理一样。

举例:

>>> testString="saaaay yes no yaaaass"
>>> print testString.strip('say')   
 yes no #以空格开头和结尾的
>>> print testString.strip('say ')
es no#开头结尾均无空格
>>> print testString.lstrip('say')
 yes no yaaaass#以空格开头
>>> print testString.rstrip('say')
saaaay yes no #以空格结尾
>>> 

可以对照编辑器中选中状态的这张图理解

以上所述就是本文的全部内容了,希望大家能够喜欢。

相关文章

深入浅析Python中的迭代器

深入浅析Python中的迭代器

目录结构: contents structure [-] 在开始文章之前,先贴上一张Iterable、Iterator与Generator之间的关系图:   1. Itera...

Python编程之列表操作实例详解【创建、使用、更新、删除】

Python编程之列表操作实例详解【创建、使用、更新、删除】

本文实例讲述了Python列表操作。分享给大家供大家参考,具体如下: #coding=utf8 ''''' 列表类型也是序列式的数据类型, 可以通过下标或者切片操作来访问某一个或者某...

python版DDOS攻击脚本

本文实例为大家分享了python版DDOS攻击脚本,供大家参考,具体内容如下 于是就找到了我之前收藏的一篇python的文章,是关于ddos攻击的一个脚本,正好今天有空,就实践下了。 附...

Python中字符串的格式化方法小结

老办法 Python2.6之前,格式字符串的使用方法相对更简单些,虽然其能够接收的参数数量有限制。这些方法在Python3.3中仍然有效,但已有含蓄的警告称将完全淘汰这些方法,目前还没有...

Python中将两个或多个list合成一个list的方法小结

python中,list这种数据结构很常用到,如果两个或者多个list结构相同,内容类型相同,我们通常会将两个或者多个list合并成一个,这样我们再循环遍历的时候就可以一次性处理掉了。所...