rstrip()
方法的局限性
rstrip()
方法并非简单地移除指定后缀,它会移除字符串末尾所有与指定字符匹配的字符。 例如,使用
rstrip('.mp4')
移除".mp4"后缀时,如果字符串结尾包含".mp4"中的字符,这些字符也会被移除,直到遇到不匹配的字符为止。
因此,对于"_4.mp4",
rstrip('.mp4')
会依次移除'4'、'.'、'p'、'm'和'4',最终结果是'_',并非预期的'_4'。
removesuffix()
方法的精准移除
Python 3.14.3
微软官方的 Python 扩展,是 VS Code 安装量最高的扩展(209M+)。集成 IntelliSense(通过 Pylance)、调试(通过 Python Debugger)、代码检查、格式化、重构和单元测试等功能。支持 Jupyter Notebook、虚拟环境管理和多 Python 版本切换。
下载
立即学习
“
Python免费学习笔记(深入)
”;
removesuffix()
方法则能精准地移除指定的后缀。它只移除与指定后缀完全匹配的字符串结尾部分,不会影响其他字符。
>>> "_4.mp4".rstrip('.mp4')
'_'
>>> "_4.mp4".removesuffix('.mp4')
'_4'
如上所示,
removesuffix('.mp4')
正确地只移除了".mp4"后缀,保留了"_4"部分。 因此,在需要精确移除后缀时,
removesuffix()
方法是更可靠的选择。