背景信息:我们工作中有一个古老的基于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]
的例子:"Blah blah boring - meeting 2/19/2008.doc"line[5]
的例子:"Business meetings 2/2008"
我在for
循环内添加了print letter
语句,它会打印出应该替换的字母,但不会像我想要的那样将该字符替换为下划线。
这里有什么问题吗?