npy文件的保存与读取

1、npy文件—Numpy专用的二进制格式。既可以保存数据也可以保存数据集(包括图片)

下面只说保存简单数据

实例:简单数据
使用npy文件保存g_D_loss的数据,g_D_loss是一个元组,已经存入数据。

            with open('./g_D_loss.npy','wb') as f:
                np.save(f, g_D_loss)

读取:

file="./g_D_loss.npy"
content=np.load(file)
print(content)

读取如果出现“Object arrays cannot be loaded when allow_pickle=False”这样的错误,因为我存取网络层时就出现这样的错误,所以记录一下,顺便说明解决的办法。
在np.load(file)-----改为np.load(file,allow_pickle=True)修改一个参数。网上说是现在的新版本更适合新的应用,增强了时效性,老版本更多适合下载一个数据集应用。

补充:

2、npz文件----压缩文件
使用np.savez()函数可以将多个数组保存到同一个文件中。
np.savez()函数的第一个参数是文件名,其后的参数都是需要保存的数组。传递数组时可以使用关键字参数为数组命名,非关键字参数传递的数组会自动起名为arr_0、arr_1……
np.savez()函数输出的是一个扩展名为.npz的压缩文件,它包含多个与保存的数组对应的npy文件(由save()函数保存),文件名对应数组名
读取.npz文件时使用np.load()函数,返回的是一个类似于字典的对象,因此可以通过数组名作为关键字对多个数组进行访问

import numpy as np

# 将多个数组保存到磁盘
a = np.arange(5)
b = np.arange(6)
c = np.arange(7)
np.savez('test', a, b, c_array=c)  # c_array是数组c的命名
# 读取数组
data = np.load('test.npz')  #类似于字典{‘arr_0’:a,’arr_1’:b,’c_array’:c}
print('arr_0 : ', data['arr_0'])  #  arr_0 :  [0 1 2 3 4]
print('arr_1 : ', data['arr_1'])  # arr_1 :  [0 1 2 3 4 5]
print('c_array : ', data['c_array'])  # c_array :  [0 1 2 3 4 5 6]
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值