一些背景信息: 我工作的地方有一个古老的基于 Web 的文档数据库系统,几乎完全由带有“正常”扩展名(.doc、.xls、.ppt)的 MS Office 文档组成。它们都是基于某种任意的 ID 号(即 1245.doc)命名的。我们正在切换到 SharePoint,我需要重命名所有这些文件并将它们分类到文件夹中。我有一个包含各种信息的 CSV 文件(比如哪个 ID 号对应于哪个文档的标题),所以我用它来重命名这些文件。我编写了一个简短的 Python 脚本来重命名 ID 号标题。
但是,文件的某些标题在文件标题中有斜杠和其他可能的错误字符,所以我想用下划线替换它们:
bad_characters = ["/", "\\", ":", "(", ")", "<", ">", "|", "?", "*"]
for letter in bad_characters:
filename = line[2].replace(letter, "_")
foldername = line[5].replace(letter, "_")
- 示例
line[2]
:“废话无聊 - 会议 2/19/2008.doc” - 示例
line[5]
:“商务会议 2/2008”
当我print letter
在循环内部添加时for
,它会打印出它应该替换的字母,但实际上不会像我想要的那样用下划线替换那个字符。
我在这里做错了什么吗?