0. Укажите версию питона.
1. Узнайте что за исключение кидается
except Exception as exception
и идите в этом направлении, но у меня просто не находит файл по вводимой строке и пропуская os.path.isdir и os.path.isfile выходит (у вас нет проверки что можно ввести неверное имя файла).
2. Странно, у меня на венде работает, так что не подскажу.
3. Нужно пробежаться по всем расширениям и проверить каждое, например если перечислять расширения через запятую.
any([file_path.endswith(extension) for extension in '.rar,.txt'.split(',')])
4. Почитайте
pep8, давайте переменным осмысленные имена, используйте
u"%s сконвертирован." % file_path
вместо
file_path + u" сконвертирован."
.
5. Используйте
if __name__ == '__main__':
6. В функцию converter лучше сразу передавать file_path
7. Возможно Вам не нужно использовать raw_input, а передавать параметры в виде аргументов (тут поможет sys.argv или
argparser)
8. Вместо
print u"-------------------------------"
можно писать
print u"-" * 20
9. Лучше добавлять атрибут
'b'
в команду
open
:
open(file_path, 'rb')
и
open(file_path, 'wb')