Обработка строк Unicode в возвращенных данных JSON

Я пытаюсь распечатать данные из извлеченного JSON, однако данные содержат данные, декодированные в Unicode. Как я могу закодировать (см. Пример), чтобы он отображался правильно. Я очень плохо знаком с Python и не смог заставить его работать, я использую Windows 7, Python 2.7 на терминале командной строки. Спасибо!

Пример: результаты >> название:

"R\u00f6yksopp - 49 процентов" должен печатать его как "Röyksopp - 49 процентов"

"title": "R\u00f6yksopp - 49 Percent",

JSON:

"results": [{
        "style": ["House", "Electro", "Synth-pop"],
        "thumb": "http://api.discogs.com/image/R-90-530519-1236701656.jpeg",
        "format": ["CD", "Maxi-Single"],
        "country": "Europe",
        "barcode": ["5 028589 023420", "BEL/BIEM", "LC 3098"],
        "uri": "/R%C3%B6yksopp-49-Percent/master/30161",
        "label": ["Virgin", "Labels", "Wall Of Sound"],
        "catno": "0946 3378752 0",
        "year": "2005",
        "genre": ["Electronic"],
        "title": "R\u00f6yksopp - 49 Percent",
        "resource_url": "http://api.discogs.com/masters/30161",
        "type": "master",
        "id": 30161
    }

1 ответ

Среда: Windows 7, кодовая страница по умолчанию = 850, Python 2.7.3

Используя урезанную версию вашего ввода:

>>> import json
>>> js = """{
...         "style": ["House", "Electro", "Synth-pop"],
...         "title": "R\u00f6yksopp - 49 Percent",
...         "id": 30161
...     }"""
>>>
>>> j = json.loads(js)
>>> j
{u'style': [u'House', u'Electro', u'Synth-pop'], u'id': 30161, u'title': u'R\xf6yksopp - 49 Percent'}
>>> j['title']
u'R\xf6yksopp - 49 Percent'
>>> print j['title']
Röyksopp - 49 Percent
>>>
Другие вопросы по тегам