起因:今天上传黑眼圈标注文件到服务器的时候发现了一个问题,发现自动创建的文件夹命名少了一个字符,以前都没出现过这种问题。经过去测试,发现是我以前写的文件上传服务中,使用了strip()方法的原因。
首先介绍一下strip方法的作用:
Python strip() 方法用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。
注意:该方法只能删除开头或是结尾的字符,不能删除中间部分的字符。
举个正常栗子:下面是用Python IDLE运行
上面看着确实是我们需要的,能把"classification.txt"里面.txt字符去掉,但是 .....请看下面。
来看看下面让人难受的例子:
似乎你们也发现问题了吧,strip()方法在一些时候会出错。把不该去掉的字符去掉了。
解决方法,用replace()方法代替。
Python replace() 方法把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。
所以上面的需求可以通过replace通过用空字符串替换掉需要替换的字符串,实现去掉字符。