У меня возникли проблемы с назначением строк Unicode в качестве имен для namedtuple. Это работает:
a = collections.namedtuple("test", "value")
и это не:
b = collections.namedtuple("βαδιζόντων", "value")
я получаю ошибку
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib64/python3.4/collections/__init__.py", line 370, in namedtuple
result = namespace[typename]
KeyError: 'βαδιζόντων'
Почему это так? В документации говорится: «Python 3 также поддерживает использование символов Unicode в идентификаторах», а ключ является допустимым unicode?
ó
. Мне кажется ошибка. - person smheidrich   schedule 28.05.2015'ó'
является'\xe1\xbd\xb9'
в исходном файле с кодировкой UTF-8, но превращается в'\xcf\x8c'
в коде, сгенерированномnamedtuple
для создания своего класса. Это определенно похоже на ошибку. - person smheidrich   schedule 28.05.2015