如何讀寫json(JaveScript Object Notation) 編碼格式數據
1 把數據轉為json格式
>>> import json
>>> data = {'name': 'xiecl', 'age': 16}
>>> json_str = json.dumps(data)
>>> json_str
'{"name": "xiecl", "age": 16}'
2 把json格式轉為python數據結構
>>> data = json.loads(json_str)
>>> data
{'name': 'xiecl', 'age': 16}
3 寫入硬盤為json文件, 然后讀出
>>> import json
>>> data = {'name': 'xiecl', 'age': 16}
>>> # Writing JSON data
... with open('data.json', 'w') as f:
... json.dump(data, f)
...
>>> # Reading data back
... with open('data.json', 'r') as f:
... data_back = json.load(f)
...
>>> data_back
{'name': 'xiecl', 'age': 16}
4 前面第三部分寫入文件為無格式寫入,文件中效果為
# 打開data.json查看
{"name": "xiecl", "age": 16}
顯示為一行,如果數據較多時,則比較難查看,下面為格式化寫入
>>> import json
>>> data = {'name': 'xiecl', 'age': 16}
>>> # Writing JSON data with specify format
... # Parameter sort_keys 是否按照字母排序
... # Parameter indent 縮進的空格數
... # Parameter separators 分割符號形式
... with open('data.json', 'w') as f:
... json.dump(data, f, sort_keys=True, indent=4, separators=(',', ': '))
...
# 打開data.json查看
{
"age": 16,
"name": "xiecl"
}
