【发布时间】:2013-01-17 06:06:31
【问题描述】:
我正在尝试从获取的 JSON 中打印数据,但是该数据具有 unicode 解码的数据。如何对其进行编码(参见示例)以正确显示。我对 python 很陌生,无法让它工作,我在命令行终端上使用 Windows 7、python 2.7。谢谢!
示例:结果>>标题:
'R\u00f6yksopp - 49 Percent' 必须将其打印为 'Röyksopp - 49 Percent'
"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
}
【问题讨论】:
-
\u00f6是ö。命令提示符是否支持这些字符? -
你使用库来解析 json 吗? (你是“导入 json”还是“导入 cjson”?)
-
显示你使用的实际 Python 代码,以及你得到的输出。
-
#!/usr/bin/env python # -*- coding: utf-8 -*- import json d = json.loads(u'''{"title": "R\u00f6yksopp - 49 Percent"}''') print d['title'].encode('utf-8') -
以上代码打印不正确..