python strip 多删掉掉字符

python strip 多删掉掉字符 问题

为何 strip 会多删掉1个字符

text = "cntaobaothree" 
a = text.strip("cntaobao")
# 结果为:hree
我想要达到的结果:three

strip删除的是包含其中每一个的字符,不是整体,要整体,就用text.replace('cntaobao','')

strip方法会移除字符串前后位置里的所有组合,也就是说括号里的单个字符的集合,只要字符串的前后字符有符合的,都会被移除
text.strip("cntaoba")的意思是text字符串前后含有c、n、t、a、o、b的字母都会被移除,所以t也包含在内。
实际上text.strip("cntaob")的效果也是一样的,即使打乱顺序也是一样,比如text.strip("ncboat")

想要达到你想要的效果,可以使用字符串的切片
a = text[8:]

strip删的是字符,不是字符串
你传入一个字符串,会被解析成一个字符列表,strip将列表中的每一个字符都删掉