← Все вопросы
На Windows в консоли вместо русских букв кракозябры — как включить UTF-8?
9
Запускаю скрипт в cmd, print("Привет") выводит что-то типа ╨ƒ╤Ç╨╕╨▓╨╡╤é. В самом редакторе всё нормально, проблема именно в консоли Windows. Как сделать, чтобы выводилось по-человечески?
3 ответа
18
✓ Принятый ответ — помог автору
В cmd перед запуском переключи кодовую страницу на UTF-8: chcp 65001. После этого русские буквы выводятся нормально. Минус — действует только на текущую сессию консоли.
Чтобы не делать это каждый раз, можно в самом скрипте задать вывод явно:
import sys
sys.stdout.reconfigure(encoding="utf-8")
Или запускать через python -X utf8 script.py. А вообще советую перейти с cmd на Windows Terminal / PowerShell — там с UTF-8 заметно меньше боли.
Дарья Морозова `chcp` без аргумента покажет текущую кодовую страницу — у винды обычно 866 или 1251, отсюда и кракозябры. · 13 месяцев назад
7
Поставь переменную окружения PYTHONUTF8=1 (или запускай python -X utf8) — тогда питон везде по умолчанию работает в UTF-8, и про chcp можно забыть.
6
chcp 65001 в консоли.
Ваш ответ
Войдите, чтобы ответить на вопрос.