Почему Windows cmd и PowerShell не отображают правильные персидские символы даже при использовании кодировки UTF-8? - PullRequest
0 голосов
/ 27 апреля 2018

Я написал очень простую программу на Python, которая показывает имена папок в определенном направлении на моем компьютере. Программа работает хорошо, но проблема в том, что когда у меня есть файл или папка с именем Persian символов и запуска программы в Windows cmd или PowerShell, они показывают символы в этой форме: ?

Я исследовал эту проблему, и были предложения, такие как ввод команды chcp 65001, но когда я делаю это и повторяю программу, я получаю эту ошибку:

Traceback (most recent call last):
  File "p.py", line 39, in <module>
    g=(path_dic(a))
  File "p.py", line 23, in path_dic
    print('%d : %s'%(i,dic[i]))
PermissionError: [WinError 31] A device attached to the system is not functioning
Exception ignored in: <_io.TextIOWrapper name='<stdout>' mode='w' encoding='utf-8'>
PermissionError: [WinError 31] A device attached to the system is not functioning

Кстати: когда я запускаю программу в своей IDE (pycharm), она отображает символы без проблем, но мне любопытно посмотреть, есть ли способ отображения персидских символов в Windows cmd или PowerShell?

Я также сделал изменение шрифта на consolas или lucida и все еще не работает

...