方法 | 作用 |
---|---|
json.dumps() | 将字典(dict)转成json字符串(str) |
json.loads() | 将Json字符串转(str)成字典(dict) |
json.dump() | 将字典(dict)转成json字符串(str)储存到文件中 |
json.load() | 从文件中提取Json字符串(str)并转成字典(dict) |
参数 | 描述 | 默认值 |
---|---|---|
skipkeys | 是否跳过无法被JSON序列化的key | False |
sort_keys | 是否对数据按照key进行排序 | False |
ensure_ascii | *重要, 如果把这个该成False, 就可以输出中文。 | True |
allow_nan | 是否允许JSON规范外的float数据(nan, inf, -inf) | True |
default | 是一个函数, 当某个value无法被序列化时, 对其调用该函数 | None |
indent | *重要, 缩进格数,填了这个参数就可以格式化输出 | None |
check_circular | 是否检查循环引用 | True |
菜鸟输入:
import json a = {'one': 1, 'two': {'name': ['张三', '李四']}} print(json.dumps(a))
菜鸟输出:
{"one": 1, "two": {"name": ["\u5f20\u4e09", "\u674e\u56db"]}} # json输出没法显示中文,也没有json格式化
高手输入:
import json a = {'one': 1, 'two': {'name': ['张三', '李四']}} print(json.dumps(a, ensure_ascii=False, indent=4))
高手输出:
{ "one": 1, "two": { "name": [ "张三", "李四" ] } }
将json字符串再转回python对象
输入
a = '{"id":"09", "name":"Nitin", "department":"Finance"}' res = json.loads(a) print(type(res), res)
输出
<class 'dict'> {'id': '09', 'name': 'Nitin', 'department': 'Finance'}
推荐一个我写的json格式化的在线工具:www.fivcan.com
支持功能 :