Форум сайта python.su
Всем привет!
Подскажите плиз, возможно ли с помощью os.rename переименовать файл, но не все название, а только одно слово заменить?
Т.е. к примеру у меня есть 3 файла с именем “InnoSwitch-CH Flyback Design119.pdf_PIXls Designer_zh_hans”, разница только в расширении, вместо слова “PIXls Designer” мне нужно вставить другое слово.
Гуглил, но нашел только примеры с названием из чисел.
Как реализовать это на Питоне 3 ?
Офлайн
Darksol89
как заменить подстроку в строке?
Офлайн
Скорее всего да, питон изучаю недавно, не запомнил пока все правильные названия
Офлайн
>>> import re >>> >>> s = 'InnoSwitch-CH Flyback Design119.pdf_PIXls Designer_zh_hans' >>> >>> o = re.sub(r'(\.pdf_)[^_]+(_zh_hans)$', r'\1word\2', s) >>> o 'InnoSwitch-CH Flyback Design119.pdf_word_zh_hans' >>>
Отредактировано py.user.next (Июль 19, 2016 13:34:24)
Офлайн
спасибо.
а как заставить скрипт заходить в папку, в которой лежат подпапки, лезть в каждую из них и переименовывать каждый 3-й файл, т.е. менять слово в них?
За меня код писать не нужно, желательно чтобы объяснили как это сделать, что применить или почитать про это конкретно. Дабы я знал как применить это в будущем
Офлайн
На форуме есть тема - поиск файла - там даже код есть как просматривать все папки
Офлайн
Darksol89Функция os.walk() раскладывает сразу на папки и файлы, найдёшь примеры её применения, они все одинаковые.
а как заставить скрипт заходить в папку, в которой лежат подпапки, лезть в каждую из них и переименовывать каждый 3-й файл, т.е. менять слово в них?
Отредактировано py.user.next (Июль 21, 2016 14:46:03)
Офлайн