目录
1. 内容介绍
本文主要介绍了如何使用python写入数据到json文件和如何从json文件读取数据
2. 写入数据到json文件
(1) 一个简单的示例:
import json
# 先定义一个准备存储到data.json文件里的顺序
data = {
"name": "John",
"age": 2,
"city": "nanjing"
}
'''
使用open()函数打开./data路径下的data.json文件
用as关键字将打开的文件返回的对象绑定到变量 f 上
打开文件的模式: 常用的有’r’(读取模式,缺省值)、‘w’(写入模式)、‘a’(追加模式)等
'''
with open('./data/data.json', 'w') as f:
# 使用json.dump()函数将序列化后的JSON格式的数据写入到文件中
json.dump(data, f, indent=4)
运行效果:
(2) 为了满足实际应用场景,可以将这个写入数据到json文件的程序封装成一个函数,以实现重复利用:
调用这个函数需要传入两个参数,一个参数就是待存入的数据,另一个参数是文件名。
下面是demo代码:
import json
# 保存数据到json文件的函数
def save_to_json(data, file_name):
# 打开文件的模式: 常用的有’r’(读取模式,缺省值)、‘w’(写入模式)、‘a’(追加模式)等
with open('./data/{}'.format(file_name), 'w') as f:
# 使用json.dump()函数将序列化后的JSON格式的数据写入到文件中
json.dump(data, f, indent=4)
# 主函数
if __name__ == '__main__':
# 待存入的数据
data1 = {
"name": "Python",
"age": 2,
"city": "nanjing"
}
# 待存入的数据
data2 = {
"name": "Json",
"age": 2,
"city": "beijing"
}
# 调用save_to_json函数
save_to_json(data1, 'data1.json') # 把data1保存到data1.json里
save_to_json(data2, 'data2.json') # 把data2保存到data2.json里
运行后的效果:
3. 从json文件读取数据
(1)一个简单的示例:
import json
# 打开文件的模式: 常用的有’r’(读取模式,缺省值)、‘w’(写入模式)、‘a’(追加模式)等
with open('./data/data.json', 'r', encoding='utf-8') as f:
# 使用json.load()函数加载JSON文件,该函数可以从文件中读取JSON格式的数据并将其解析为Python对象
data = json.load(f)
# 输出读取到的数据
print(data)
运行效果:
(2) 为了满足实际应用场景,可以将这个从json文件读取数据的程序封装成一个函数,以实现重复利用:
调用这个函数需要传输一个参数,就是文件的名字,因为文件的路径已经确定了。其实可以根据实际情况,修改一下函数,可以加一个文件路径的参数。
下面是demo代码:
import json
# 从json文件读取数据的函数
def read_from_json(file_name):
# 打开文件的模式: 常用的有’r’(读取模式,缺省值)、‘w’(写入模式)、‘a’(追加模式)等
# 这里encoding是定义打开文件时使用的编码方式,这里使用的是utf-8
with open('./data/{}'.format(file_name), 'r', encoding='utf-8') as f:
# 使用json.load()函数加载JSON文件,该函数可以从文件中读取JSON格式的数据并将其解析为Python对象
data = json.load(f)
return data
if __name__ == '__main__':
# 调用read_from_json()函数读取data.json的数据
# 输出读取到的数据
print(read_from_json('data.json'))
4. 结束语
感谢您的阅读,如果感觉对您有所帮助,可以点个赞或者评论嘛,这是对我莫大的鼓励!,也十分欢迎您在排卵区指出我的不足之处。我们共同进步!