Не-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.

Другие вопросы по тегам