python——json.loads避坑

Python019

python——json.loads避坑,第1张

json.loads:将json字符串load(s)成python对象

补充知识:

(来自:https://blog.csdn.net/cuicui_ruirui/article/details/105346544)

str1 = "{'code': '0000', 'data': {'id': 413}, 'msg': None}"

str2 = '{"code": "0000", "data": {"id": 413}, "msg": None}'

str3 = '{"code": "0000", "data": {"id": 413}, "msg": "None"}'

对这三个字符串分别使用json.loads()方法的时候只有str3的运行结果是正确的。

这里需要注意的点:

1.如果要让json字符串转化为dict类型,字符串中key的值需要用双引号括起来

2.如果字符串中的value是一个字符串形式,如str2中的None,也需要用双引号括起来

3.如果字符串中的value是一个数值的话可以不需要用双引号

END~

python 中操作json时候有两个方法,dumps 方法与 loads 方法。

dumps 方法是将 json 的 dict 形式,转换成为字符串 str 类型

程序结果:

<type 'dict'>{'55': '66', 1: 2, 3: 4}

json.dump(dict) return:

<type 'str'>{"55": "66", "1": 2, "3": 4}

json.loads(str) return

<type 'dict'>{u'55': u'66', u'1': 2, u'3': 4}