将list或dict类型的数据保存为文本再快速读入,最便捷的方法是保存为json格式的文件。
1.json数据的写入
json库提供dumps()和dump()两种方法进行数据,其中前者适用于将python对象转化为JSON字符串,而后者则可以将python对象写入json文件。
方法1:
import json
persons = [
{
'username':'UnikFox',
'age':20,
'country':'China'
},
{
'username':'Luna',
'age':16,
'country':'Britain'
}
]
path_name = 'C:\\Users\\lenovo\\Desktop\\LSTM\\m.json'
#利用dumps()方法将python对象转化为json字符串
json_str = json.dumps(persons)
print(type(json_str)) #<class 'str'>
print(json_str) #[{"username": "UnikFox", "age": 20, "country": "China"}, {"username": "Luna", "age": 16, "country": "Britain"}]
利用dump()方法将python对象存储到json文件中
with open('C:\\Users\\lenovo\\Desktop\\LSTM\\m.json','w',encoding='utf-8') as fp:
json.dump(persons,fp)
说明:
1.有时候我们的字符串为中文,因此在打开文件时需要设置编码encoding;2.json文件的写入默认为Unicode编码,在写入数据后会自动转化为unicode字符,为方便中文的显示,我们需要关闭其默认编码’ensure_ascii=False’(在json.dump中添加此参数)
方法2:
data = json.dumps(persons)
with open('C:\\Users\\lenovo\\Desktop\\LSTM\\m.json','w') as f:
f.write(data)
2.json数据的读取
json库提供了loads()和load()两种方法,前者为从JSON字符串转化为python对象,而后者则是从文件中获取python对象。
# 利用load()方法从json文件中读取数据并存储为python对象
with open('C:\\Users\\lenovo\\Desktop\\LSTM\\m.json','r') as f:
datas = json.load(f)
print(datas)
参考文献
1.https://www.cnblogs.com/wt11/p/8431562.html
2.https://www.cnblogs.com/Unikfox/p/9690476.html