我有一个JSON输入一个包含字典为Unicode字符的列表: 例子:解析JSON从unicode字符串作为字典
input = u'[{
attributes: {
NAME: "Name_1ĂĂÎÎ",
TYPE: "Tip1",
LOC_JUD: "Bucharest",
LAT_LON: "234343/432545",
S70: "2342345",
MAP: "Map_one",
SCH: "1:5000,
SURSA: "PPP"
}
}, {
attributes: {
NAME: "NAME_2șțț",
TYPE: "Tip2",
LOC_JUD: "cea",
LAT_LON: "123/54645",
S70: "4324",
MAP: "Map_two",
SCH: "1:578000",
SURSA: "PPP"
}
}
]
'
如何可以解析这个字符串变成词典列表?我试图做到这一点使用:
import json
json_d = json.dumps(input)
print type(json_d) # string object/Not list of dicts
json_obj = json.loads(json_d) # unicode object/Not list of dicts
我不能解析JSON的内容:
print json_obj[0]["attributes"]
TypeError: string indices must be integers
我使用Python 2.7.11。谢谢你的帮助!
只要做'json.loads(输入)'。转储是相反的过程,你不需要它。 – RemcoGerlich
但他会需要正确串化的json。当前输入没有包含在引号内的属性。我想这会是一个问题。 –
您需要使用'json.loads'而不是'json.dumps'。 'load'用于*反序列化*。 'dump'用于*序列化*。您正在将一个unicode字符串*序列化为一个JSON字符串*。 –