Кириллица в Python под Windows и Pycharm

Избитая проблема кодировки кириллических шрифтов при коддингде под Windows с использованием Pycharm, когда код имеет print’ы на Русском языке. Некоторые обходят эту проблему конвертированием print’a при его отработке как показано в примере

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# -*- coding: utf-8 -*-
print(u’Пример вывода кириллического текста’).encode(866)
# -*- coding: utf-8 -*- print(u’Пример вывода кириллического текста’).encode(‘866’)
# -*- coding: utf-8 -*-
print(u’Пример вывода кириллического текста’).encode(‘866’)

Но в таком случае проблемы возникнут при выводе в Pycharm, а не Windows cmd как было до этого.

Решение

Добавляете приведенный ниже код в ваши скрипты и кириллический текст будет выводится одинаково корректно как в Windows cmd, в Pycharm так и в Linux системах.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# -*- coding: utf-8 -*-
import sys
reload(sys)
import locale
sys.setdefaultencoding(locale.getpreferredencoding())
print(u’Пример вывода кириллического текста’)
# -*- coding: utf-8 -*- import sys reload(sys) import locale sys.setdefaultencoding(locale.getpreferredencoding()) print(u’Пример вывода кириллического текста’)
# -*- coding: utf-8 -*-
import sys
reload(sys)
import locale
sys.setdefaultencoding(locale.getpreferredencoding())
print(u’Пример вывода кириллического текста’)

И как альтернативный вариант

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
import sys
reload(sys)
sys.setdefaultencoding(‘utf-8)
print(u’Пример вывода кириллического текста’)
import sys reload(sys) sys.setdefaultencoding(‘utf-8′) print(u’Пример вывода кириллического текста’)
import sys
reload(sys)
sys.setdefaultencoding(‘utf-8′)
print(u’Пример вывода кириллического текста’)

One comment on “Кириллица в Python под Windows и Pycharm

  1. reload (sys) — подчёркивает ошибку «unresolved reference ‘reload'»

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *