利用python保存数据方式

1 numpy中npy文件保存和读取

利用numpy库重要保存array数据,

# 保存数据
import numpy as np
data = np.zeros((3,3))
np.save("./test.npy", data)
# 加载数据
data = np.load("./test.npy")

2,torch中pt文件保存和读取

pt文件用来保存tensor形式的数据

# 保存数据
import torch 
data = np.zeros((3,3))
data_tensor = torch.from_numpy(data)
torch.save(data_tensor, "./test.pt")
# 加载数据
data_tensor = torch.load("./test.pt")

3,pickle中pkl文件保存和读取

利用pickle可以保存任何格式的文件

# 保存数据
import pickle

def save_pickle(data, file_name):
	f = open(file_name, "wb")
	pickle.dump(data, f)
	f.close()
def load_pickle(file_name):
	f = open(file_name, "rb+")
	data = pickle.load(f)
	f.close()
	return data
	
data = np.zeros((3,3))
data_tensor = torch.from_numpy(data)
save_pickle(data, "./test.pkl")
save_pickle(data_tensor, "./test_tensor.pkl")
# 加载数据
data = load_pickle("./test.pkl")
data_tensor = tload_pickle("./test_tensor.pkl")

4,numpy中npz文件保存和读取

对于同时在一个文件夹保存多中类型数据,并且每种数据自带标签,则可以采用字典储存方式,然后利用pt文件或者pkl文件都可以直接进行保存和读取。
也可以利用npz文件。

# 保存数据
import numpa as np 
data_1 = np.zeros((3,3))
data_2 = np.ones((3,1))

np.save("./test.npz", data_1 = data_1, data_2 = data_2)
# 加载数据
data_names = np.load("./test.npz")
print(data_names.files) # ['data_1', "data_2"]
print(data_names["data_1"]) # np.zeros((3,3))
print(data_names["data_2"]) # np.ones((3,1))

5,python中h5文件保存和读取

利用python包中h5py包进行读取和保存h5文件。
关于H5文件读写,可参考https://zhuanlan.zhihu.com/p/104145585?utm_source=wechat_session

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐