Python не может выводить литералы Unicode - PullRequest
0 голосов
/ 12 октября 2019

Я пытаюсь вывести символы Unicode из Python 3. Программа представляет собой простой однострочный файл, где я печатаю не-ascii литералы:

print("íó")

Программа закодирована в utf-8.

Я запускаю эту программу на двух разных компьютерах с Windows (Windows 7, Windows 10);на каждой машине я запускаю это с cmd и MinGW .

Это работает в Windows 10 (как cmd, так и MinGW).

В Windows 7 выходные данные преобразуются в ascii при запуске из cmd, а Python выдает исключение при запуске из MinGW:

Traceback (последний вызов был последним): файл "test.py", строка4, в печатном ("\ xed \ xf3") файле "C: \ Program Files (x86) \ Python36-32 \ lib \ encodings \ cp1251.py", строка 19, в кодировании, возвращают codecs.charmap_encode (входной, self. ошибки, encoding_table) [0] UnicodeEncodeError: кодек 'charmap' не может кодировать символы в позиции 0-1: символы отображаются на

В чем может быть проблема? Какая разница в машинах (версии Python и MinGW очень близки)? В чем отличие запуска Python от cmd и MinGW, которые вызывают исключение?

Конфигурации машин:

  • Windows 7;Python 3.6.0;MinGW 2.8.3
  • Windows 10;Python 3.6.5;MinGW 2.8.5
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...