Некоторая справочная информация: у нас есть древняя веб-система баз документов, где я работаю, почти полностью состоящая из документов MS Office с «обычными» расширениями (.doc, .xls, .ppt).Все они названы на основе своего рода произвольного идентификационного номера (например, 1245.doc).Мы переходим на SharePoint, и мне нужно переименовать все эти файлы и отсортировать их по папкам.У меня есть CSV-файл со всеми видами информации (например, какой идентификационный номер соответствует названию какого документа), поэтому я использую его для переименования этих файлов.Я написал короткий сценарий Python, который переименовывает заголовок идентификатора.
Однако некоторые заголовки документов содержат косую черту и другие, возможно, плохие символы в заголовке файла, поэтому я хочузамените их подчеркиванием:
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
, он напечатает букву, которую он должен заменить, но фактически не заменит этот символ наподчеркивание, как я хочу.
Есть ли что-то, что я делаю здесь неправильно?