Я написал программу на Tkinter (Python 2.7), помощнике по скрабблеру на норвежском языке, который содержит некоторые специальные символы ( øå
), что означает, что мой список слов (ordliste) содержит слова со специальными символами.
Когда я запускаю свою функцию finnord (c *), она возвращает cd. Я использую entry.get ()
, чтобы получить слово, которое нужно вставить в мою функцию.
Моя проблема связана с кодировкой entry.get (). У меня локальная кодировка UTF-8
, но я получаю UniCodeError
, когда пишу любые специальные символы в поле ввода и сопоставляю их со своим списком слов.
Вот мой результат.
Warning (from warnings module):
File "C:\pythonprog\scrabble\feud.py", line 46
if s not in liste and s in ordliste:
UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode -
interpreting them as being unequal
Когда я пишу в своей оболочке:
> ordinn.get()
u'k\xf8**e'
> ordinn.get().encode('utf-8')
'k\xc3\xb8**e'
> print ordinn.get()
kø**e
> print ordinn.get().encode('utf-8')
kø**e
Кто-нибудь знает, почему я не могу сопоставить ordinn.get () (запись) со своим списком слов?