Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Python: Общие вопросы > Ошибки Кодировки


Автор: RageHunter 21.9.2008, 15:01
У меня маленькая проблема с которой я уже 3 дня не могу разобраться, вроде бы ни чего такого но не получается!
Надеюсь с вашей помощью у меня получиться!

вот обрезанный код
Код

# -*- coding: cp1251 -*-
import es, playerlib, gamethread, popuplib, cPickle, os.path, wcsconfig, time, random, langlib, keyvalues
from wcsconfig import *

........

game = es.getgame()
text = None
#Run when our mod is loaded
def load():
    global text
    text = langlib.Strings(es.getAddonPath('wcs') + '/strings.ini')
    a = popuplib.create('WCSMenu')
    a.addline('- WCS Меню -')
    a.addline('----------------')
    a.addline('->1. Магазин')
    a.addline('----------------')
    a.addline('->2. Просмотр скилов')
    a.addline('->3. Сбросс скилов')
    a.addline('->4. Развитие скилов')
    a.addline('----------------')
    a.addline('->5. Сменить расу')
    a.addline('->6. Информация о расе')
    a.addline('----------------')
    a.addline('->7. Player Information')
    a.addline('->8. WarCraft Top 10')
    a.addline('->9. WarCraft Rank')
    a.addline('----------------')
    a.addline('0. Cancel')
    a.menuselect = MenuSelect
    servercommands = ('wcs_dealdamage')
    for x in servercommands:
        if not es.exists('command',x):
            es.regcmd(x, 'wcs/%s'%x)


Внем все отлично, он полностью рабочий но есть одно но, он английский при попытке перевести как это сделано у меня он начинает выдавать  ошибка 
Код

  File "C:\Documents and Settings\Rage Hunter\WCSPython_0.8.5h(RC5)
\addons\eventscripts\wcs\wcs.py", line 22
SyntaxError: 'charmap' codec can't decode byte 0x98 in position 0: character map
s to <undefined>

Это странно т.к. строка a.addline('->5. Сменить расу') не содержит ошибок
И если вернуть эту строку с исходника на англ языке то предыдущие нормально отображаются
и    a.addline('->2. Просмотр скилов')
и    a.addline('->3. Сбросс скилов')
и    a.addline('->4. Развитие скилов')
Все по русски и ни каких проблем.
Помогите как решить эту проблему и что это за позиция 0
Согласно кодировке на сколько я помню 0x98        u'\ufffe'   #  0x98 -> UNDEFINED


Если будет нужен полный код или исходник я дам!
Надеюсь на вашу помощь!!!

Автор: setq 21.9.2008, 15:53
wcs.py - это твой скрипт так называется?


Цитата

он английский при попытке перевести как это сделано у меня он начинает выдавать  ошибка

Что?

Автор: RageHunter 22.9.2008, 12:41
Вот, я понял, вся проблема в русский букве "И"
питон на неё ругается почему-то
Можно сделать что бы он отображал эту букву и не выдавал ошибку 0x98

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)