Не-ascii поля в списке всех участников команды launchpad, использующих launchpadapi?
Я написал этот скрипт на python, чтобы вывести список всех отображаемых имен членов команды в Launchpad:
from launchpadlib.launchpad import Launchpad
cachedir = "/home/username/.launchpadlib/cache/"
launchpad = Launchpad.login_anonymously('just testing', 'production', cachedir)
team = launchpad.people['']
len(team.members)
for person in team.members:
print person.display_name
exit()
Но когда я выполняю скрипт, отправляющий его в выходной файл, он не может найти имя, отличное от ascii:
$ python get_list.py > /tmp/file
Traceback (most recent call last):
File "get_list.py", line 7, in <module>
print person.display_name
UnicodeEncodeError: 'ascii' codec can't encode character u'\xf6' in position 8: ordinal not in range(128)
Есть идеи?
1 ответ
Решение
Использование
print person.display_name.encode('utf-8')
сообщить Python, какую кодировку символов использовать для строк Unicode.