json.loads(): 相当于 decode
Deserialize
s
(astr
,bytes
orbytearray
instance
containing a JSON document) to a Python object.将 str, bytes, bytearray 反序列化为python对象(list, tuple, dict等)
>>> s1='{"a":"pic","b":"url"}' # 注意dict内一定要用双引号
>>> json.loads(s1) # 把 str 转为 dict(python对象)
{'a': 'pic', 'b': 'url'}
>>> s3=(1,2,3)
>>> json.dumps(s3)
'[1, 2, 3]'
>>> json.loads(json.dumps(s3)) #tuple反序列化得到的是list
[1, 2, 3]
json.dumps(): 相当于encode
Serialize
obj
to a JSON formattedstr
.将python对象(dict, list, tuple等)序列化为json格式字符串
>>> d = {'a':'name','b':'gender'}
>>> json.dumps(d) # 序列化字典
'{"a": "name", "b": "gender"}'
>>> t = (1,2,3) # 序列化元祖,得到列表字符串
>>> json.dumps(t)
'[1, 2, 3]'
>>> l = ['a','b','c']
>>> json.dumps(l) # 序列化列表
'["a", "b", "c"]'
>>> l_zh = ['汉语','en']
>>> json.dumps(l_zh)
'["\\u6c49\\u8bed", "en"]'
>>> json.dumps(l_zh, ensure_ascii=False) # 序列化含中文字符的列表
'["汉语", "en"]'