json是经常使用的数据传输格式,但是实际中会有一些json的格式不符合标准。
比如json中的key不是字符格式,没有引号。
import json
jstr = '{a : 1,b : 2,c : 3}'
json.loads(jstr)
报错:JSONDecodeError: Expecting property name enclosed in double quotes
使用正则解析会比较麻烦,推荐使用demjson。
pip install demjson
import demjson
dict1 = demjson.decode(jsonstr)
dict1
output:{'a': 1, 'b': 2, 'c': 3}
demjson主要用法:
#把dict转换为json
ss ={'a':1,'b':3}
demjson.encode(ss)
output: '{"a":1,"b":3}'
#把json转换为dict
jstr = '{a : 1,b : 2,c : 3}'
demjson.decode(jsonstr)
output:{'a': 1, 'b': 2, 'c': 3}
网友评论