关于python中strip⽅法的理解
1.strip⽅法并不是去除对称字符串的。
⽐如
a="123abcd321"
a.strip()⽅法的结果是abcd
有⼈可能就把strip⽅法理解成了“可以去除字符串两端对称字符”的⼀种⽅法。这么理解是错误的。
2.strip⽅法既可以去除字符串左侧的字符也可以去除字符串右侧的字符,也可以两端同时去除。
a="123abcd"
a.strip(“123”)的结果是abcd
b="abcd123"
b.strip("123")的结果是abcd
strip⽅法的结果其实是先执⾏lstrip⽅法再执⾏rstrip⽅法,为了语义清楚,你如果要去除字符串右侧的字符,最好⽤rstip,左侧的就⽤lstrip 3.strip⽅法并不是匹配⼦串来删除字符串的
如果是匹配⼦串的,那么就⽆法解释下⾯的结果
a="123abcd"
a.strip("1234")的结果是abcd
4.strip⽅法真正的执⾏流程是这样的:把strip中的参数拆分成⼀个个的字符,先执⾏lstrip⽅法,从字符串的左侧起,如果有字符是strip参数中的任意⼀个字符,那么就从字符串中删除掉这个字符直到到⼀个字符,这个字符不属于strip参数中的任意⼀个字符。再执⾏strip⽅法,从字符串的右侧起,如果有字符是strip参数中的任意⼀个字符,那么就从字符串中删除掉这个字符直到到⼀个字符,这个字符不属于strip参数中的任意⼀个字符。
b="f"
字符串函数strip的作用b.strip(".cof")
这个例⼦,先执⾏lstrip的⽅法的结果是_f
在_f的基础上执⾏rstrip⽅法
结果是_ahfd
最后在⽹上到⼀个题⽬,对于理解strip⽅法很有⽤处
a="movies.csv"
a.strip(".csv")
的结果是什么?
预期的结果是movies
但实际上结果是movie
你能理解了吗?
所以不要⽤strip⽅法来获取⽂件名,有坑啊!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论