Проблема в моем коде выглядит примерно так:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
deg = u'°'
print deg
print '40%s N, 100%s W' % (deg, deg)
codelim = raw_input('40%s N, 100%s W)? ' % (deg, deg))
Я пытаюсь сгенерировать приглашение raw_input для символов-разделителей внутри строки широты/долготы, и приглашение должно включать пример такой строки. print deg
и print '40%s N, 100%s W' % (deg, deg)
оба работают нормально — они возвращают «°» и «40° с.ш., 100° з.д.» соответственно — но шаг raw_input
каждый раз терпит неудачу. Ошибка, которую я получаю, выглядит следующим образом:
Traceback (most recent call last):
File "C:\Users\[rest of the path]\scratch.py", line 5, in <module>
x = raw_input(' %s W")? ' % (deg))
UnicodeEncodeError: 'ascii' codec can't encode character u'\xb0' in position 1:
ordinal not in range(128)
Я думал, что решу проблему, добавив заголовок кодировки, как указано a-word-document-using-docx">здесь (и действительно, это позволило вообще напечатать знак степени), но я все еще получаю ошибки Unicode, как только добавляю безопасный в остальном строка на raw_input
. Что тут происходит?