Python函数将任意字符串转换为有效文件名

5 投票
1 回答
3273 浏览
提问于 2025-04-16 13:22

有没有一个内置的函数,可以从字符串中去掉所有不能出现在Windows文件名里的字符,或者用其他方式替换掉它们?

比如说,function("Some:unicode\symbols") 这个函数应该返回 "Some-unicode-symbols"

1 个回答

5
import re

arbitrary_string = "File!name?.txt"
cleaned_up_filename = re.sub(r'[/\\:*?"<>|]', '', arbitrary_string)
filepath = os.path.join("/tmp", cleaned_up_filename)

with open(filepath, 'wb') as f:
    # ...

这段内容来自用户 gx
显然,你需要根据自己的情况进行调整。

撰写回答