Ваши настоящие имена файлов не обязательно должны быть строчными, но вы передаете методу replace
строчную строку 'dm'
. Он не может найти строчную букву 'dm'
в имени файла и, следовательно, возвращает то же имя файла, в результате чего os.rename
ничего не делает.
Имя файла можно записать в нижнем регистре до вызова метода replace
:
os.rename( path+'\\'+ filename , path+'\\'+ filename.lower().replace(old , new) )
Однако это приведет к тому, что имя нового файла будет полностью в нижнем регистре. Если вы хотите сохранить регистр остальных имен файлов, вместо него можно использовать re.sub
с флагом IGNORECASE
:
import re
...
os.rename( path+'\\'+ filename , path+'\\'+ re.sub(old, new, filename, flags=re.IGNORECASE))