Json 格式数据导入与导出
1. json的数据格式
JSON 是用于存储和交换数据的语法。JSON (JavaScript Object Notation)最初是用 JavaScript 对象表示法编写的文本,但随后成为了一种常见格式,被包括Python在内的众多语言采用。
python里面的语言对象一般只有python能读懂,为了能比较好储存,而且能够让别的编程语言也能读懂这些数据,就会用json来转换储存。或者说把json数据类型的转化成python的数据类型。
{
"iot": "Ammeter",
"ite": {
"Power": {
"value": "on",
"time": 1510799670074
}
}
}
2. json.load()和json.loads()
load()
load()
函数可以打开一个文件对象,将其读取为 JSON 格式的字符串数据,并将其转化为 Python 对象。它的语法如下:
import json
with open('data.json', 'r') as f:
data = json.load(f)
其中,
data.json
是需要读取的 JSON 文件。在上述代码中,使用了 Python 的with...as...
语句自动关闭文件句柄。接下来,我们可以对data
进行操作。
loads()
loads()
函数将一个 JSON 字符串数据解码为 Python 对象,其语法如下:
import json
json_str = '{"name": "Alice", "age": 18}'
data = json.loads(json_str)
在上述代码中,将一个包含两个键值对的 JSON 字符串
{"name": "Alice", "age": 18}
解码为 Python 对象后赋值给data
。
3. dump( )与dumps( )
dump
dump()
函数将 Python 对象转换为 JSON 格式并写入文件,其语法如下:
import json
data = {'name': 'Alice', 'age': 18}
with open('data.json', 'w') as f:
json.dump(data, f)
在上述代码中,将一个包含两个键值对的字典对象
{'name': 'Alice', 'age': 18}
转换为 JSON 格式后写入到文件data.json
中。
dumps
dumps()
函数将 Python 对象转换为 JSON 格式的字符串,其语法如下:
import json
data = {'name': 'Alice', 'age': 18}
json_str = json.dumps(data)
在上述代码中,将一个包含两个键值对的字典对象
{'name': 'Alice', 'age': 18}
转换为 JSON 格式的字符串后赋值给json_str
。需要注意的是,
dump()
和dumps()
函数虽然作用相同,但参数略有不同。例如,dump()
函数需要传入一个文件句柄,而dumps()
函数则只需要将 Python 对象作为其唯一的参数即可。总之,
load()
和loads()
函数是用于将 JSON 数据解码成 Python 对象,而dump()
和dumps()
函数则是用于将 Python 对象编码成 JSON 格式。