Python

Помогите пожалуйста, я начинающий программист и я столкнулся с проблемой. Как сделать локализацию Minecraft Python API?

Программирую я в python учусь по книге Крэйга Ричардсона: "Программируем с Minecraft"
Ввожу 3 строки
Далее нажимаю f5
И в Minecraft'е выводит какую-ту чепуху
Что делать?
Видимо, где-то нужно поменять кодировку. Это не экспертное мнение, а лишь предположение
Python не знаю, в Minecraft никогда не играл.
Андрей Бармихин
Андрей Бармихин
17 771
Лучший ответ
Михаил Усольцев ахаха, спасибо, поднял настроение!
В Mirecraft нет и никогда не было вменяемой кодировки.
Когда-то давно у меня стоял на нём русификатор, всё было заменено кириллицей. Когда я перевёл карту на сервер (а соответственно русификатор при этом больше не работает), все таблички на карте покрылись иероглифами. Пришлось искать специальный плагин, который переделывал иероглифы в русские буквы при нажатии.
Так что не пиши на кириллице, он автоматически заменит её на иероглифы!
Taxi1989 Taxi1989
Taxi1989 Taxi1989
71 508
1) какая кодировка файла?
2) какая версия Питона?
Не смешивай изучение языка программирования с Minecraft. Так ты только усложняешь изучение языка; создаёшь проблемы, по которым сложно найти ответ.
Михаил Усольцев 1)Как добавить кодировку? И как ее узнать? Я только начинаю так - что хз
2)3.7.0
Напиши по английски и никогда больше ни в одной программе ни при каких обстоятельствах не используй кириллицу. Только латинскине буквы
Влад Нукатов
Влад Нукатов
8 860
Михаил Усольцев Ну эмм... мне для друга а он в английском не шарит
Ты пишешь в консоле windows, а там по умолчанию кодировка win1251

Для начала, создай файл например в Notepad++ в кодировке utf-8 (будет написано в внизу справа).
И создавать всегда нужно обязательно в этой кодировке!

Далее, добавь в начале программы
# -*- coding: utf-8 -*-

это переведет всю работу программы в юникод

Если не поможет, в тексте добавь букву u
mc.postToChat(u"Привет")

И работай на Python 3, в Python 2 таких проблем с кодировкой кириллицей очень много, погрязнешь по уши
Михаил Усольцев У меня python 3
Зависит от настроек. В моём случае помогло редактирование файла c:\Python37\Lib\site-packages\mcpi\util.py:
# return str(m).encode("cp437")
return str(m).encode("cp1251")
Также может подойти:
return str(m).encode("utf8")