您使用的方法错误。str.replace
改为使用:
>>> "Boat.txt".replace(".txt", "")
'Boat'
:str.replace
将替换字符串中的任何位置。
>>> "Boat.txt.txt".replace(".txt", "")
'Boat'
>>> import re
>>> re.sub(r"\.txt$", "", "Boat.txt.txt")
'Boat.txt'
如果要不带扩展名的文件名,os.path.splitext
则更合适:
>>> os.path.splitext("Boat.txt")
('Boat', '.txt')