python中str的strip()函数解释

我们先在python命令行中输入== help(str) ==,再找到strip(…)看看它的官方解释

strip(...)
 |      S.strip([chars]) -> str
 |      
 |      Return a copy of the string S with leading and trailing whitespace removed.
 |      If chars is given and not None, remove characters in chars instead.

意思是说,strip()返回字符串S的副本,该副本删除前面和后面的空格;如果参数不为空,则移除参数指定的字符。

str.strip()时

这个很好理解,就是删除str前后的空格、换行、制表符。
例如:
str = ’ abc ’
则str.strip()打印’abc’
str = ‘\n abc d \t’
则str.strip()打印’abc d’

str.strip(chars)时

== 将str和chars都看成字符数组,从str[0]开始,去匹配chars[]中的所有字符,匹配到就删除str[0]并开始str[1]的匹配,没匹配到就停止;从尾部开始是一样的思路 ==
在这里插入图片描述
s[0]=0,在[‘0’,‘1’,‘3’]中出现,删除;s[0]=1,在[‘0’,‘1’,‘3’]中出现,删除;s[0]=2,不在[‘0’,‘1’,‘3’]中,停止。同理从尾部开始…
在这里插入图片描述
s[0]=’ ‘,不在[‘0’,‘1’,‘3’]中,停止。同理从尾部开始…
在这里插入图片描述
s[0]=’ ‘,在[‘0’,’ ',‘1’,‘3’]中出现,删除;s[1]=0,删除;s[2]=1删除;s[3]=2未出现,停止。同理从尾部开始…

总结

其实空参形式下,解释器默认将形参chars视为’\n \t’,匹配思路也是跟上面一样。

猜你喜欢

转载自blog.csdn.net/diuleilaomu/article/details/86589673