【Python】strip 函数踩坑

S.strip(chars=None)

strip 函数用于去除字符串首尾的空格,当 chars 不为 None 时,则删除字符串首尾的 chars 中的字符。

当 chars=None 时,去除首尾空格,没啥好说的,我们来看 chars 不为 None 时的情况。

str = 'abc123abc'
print(str.strip('a'))        # bc123abc
print(str.strip('abc'))     # 123

结果跟预期的一样,我们再看下面的例子:

print(str.strip('cba'))      # 123
print(str.strip('decbafg')) # 123

这结果让我们大跌眼镜,明明是“abc”,为什么用“cba”也能删除呢?下面一个更夸张,“defg”这4个字母原字母中根本没有。

结果表明,只要首尾两端的字符在 chars 之内,就会被删除,直到遇到第一个不在 chars 内的字符。

posted @ 2018-11-14 14:52  丹枫无迹  阅读(1404)  评论(2编辑  收藏  举报