字典与json转化主要用到以下方法:
- loads():将json数据转化成dict数据
- dumps():将dict数据转化成json数据
字典转json数据:
In [5]: import json
In [6]: dict = {'name':'mary','age':21}
In [7]: type(dict)
Out[7]: dict
In [8]: j = json.dumps(dict)
In [9]: j
Out[9]: '{"name": "mary", "age": 21}'
这里需要注意的是,如果
字典转json时包含汉字,就会出现编码问题
,如下:
In [29]: staff = {'name':'权权','age':23,'sex':'女'}
In [30]: json.dumps(staff)
Out[30]: '{"name": "\\u6743\\u6743", "age": 23, "sex": "\\u5973"}'
所以如果有中文,我们需要加参数处理:
In [31]: json.dumps(staff,ensure_ascii=False)
Out[31]: '{"name": "权权", "age": 23, "sex": "女"}'
原因
:通常用post方式请求时是json数据,但如果有中文则显示有问题,因为中文用 unicode 编码,而默认却是用ASCII解析的,中文不在ASCII编码中,所以不能显示中文。
json数据转字典:
In [25]: j
Out[25]: '{"name": "mary", "age": 21}'
In [26]: result = json.loads(j)
In [27]: result
Out[27]: {'name': 'mary', 'age': 21}
In [28]: type(result)
Out[28]: dict
版权声明:本文为quanqxj原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。