如何在 Python 中替换(或去除)文件名的扩展名?
Python中是否有一个内置函数可以替换(或删除,无论如何)文件名的扩展名(如果有的话)?
例子:
print replace_extension('/home/user/somefile.txt', '.jpg')
在我的例子中:/home/user/somefile.txt
会变成/home/user/somefile.jpg
我不知道这是否重要,但我需要这个用于我正在编写的 SCons 模块。(所以也许我可以使用一些 SCons 特定功能?)
我想要一些 干净 的东西。对字符串中所有出现的 进行简单的字符串替换.txt
显然是不干净的。(如果我的文件名是
,这将失败somefile.txt.txt.txt
)
-
尝试os.path.splitext它应该做你想做的事。
import os print os.path.splitext('/home/user/somefile.txt')[0]+'.jpg' # /home/user/somefile.jpg os.path.splitext('/home/user/somefile.txt') # returns ('/home/user/somefile', '.txt')