我有代码。
# -*- coding: utf8 -*-
import re, json
from pprint import pprint
jsonStr = '{"type":"\u041f\u0435\u043d\u0438","values":{"v1":"222"}}'
data = json.loads(jsonStr)
pprint(data)
输出
{u'type': u'\u041f\u0435\u043d\u0438', u'values': {u'v1': u'222'}}
如何在'中输入正常数据'?
感谢所有人, 控制台中的漂亮输出
jsonStr = '{"type":"\u041f\u0435\u043d\u0438","values":{"v1":"222"}}'
data = json.loads(jsonStr.decode("utf-8"))
print json.dumps(data, sort_keys=True, indent=2).decode("unicode_escape")
输出
{
"type": "Пени",
"values": {
"v1": "222"
}
}
答案 0 :(得分:2)
您拥有正常数据:
>>> import json
>>> jsonStr = '{"type":"\u041f\u0435\u043d\u0438","values":{"v1":"222"}}'
>>> data = json.loads(jsonStr)
>>> print data['type']
Пени
字典和列表等Python容器使用repr()
函数显示其内容;您正在查看调试器友好输出,这是ASCII安全的。为了使ASCII安全,任何非ASCII和不可打印的代码点都显示为转义序列,因此您可以将该输出复制到Python解释器并安全地重新创建值,而不必担心编解码器。
只需像往常一样使用数据。我打印了字符串,以便Python可以将其编码为我的终端编解码器,我的终端对其进行解码并显示俄语文本(西里尔字符)。