os.rename
не заботится о расширениях ( «типы файлов» , как вы их называете), а Windows заботится. Если расширения нет, Windows не знает, что это за файл.
Вы можете извлечь расширение файла перед переименованием и добавить его к новому имени.
Вы можете использовать os.path.splitext
, чтобы получить исходное расширение:
old_name, extension = os.path.splitext(old_filename)
new_filename = new_name + extension
os.rename(old_filename, new_filename)
В вашем случае:
for i, source in enumerate(os.listdir(path)):
old_name, extension = os.path.splitext(source)
destination = name + str(i) + extension
os.rename(source, destination)