np.load()出现错误ValueError: Object arrays cannot be loaded when allow_pickle=False

numpy.save()

numpy.save(file, arr, allow_pickle=True, fix_imports=True)

  • file:文件名/文件路径
  • arr:要存储的数组
  • allow_pickle:布尔值,允许使用Python pickles保存对象数组(可选参数,默认即可)
  • fix_imports:为了方便Pyhton2中读取Python3保存的数据(可选参数,默认即可)

代码

a = np.array([['张三', '李四', '王五', '赵六'], ['11', '12', '13', '14', '15']])

np.save('save_a', a)  # 存为.npy文件,用的是工作目录,而不是脚本的路径

c = np.load('save_a.npy')  # .npy文件读入数组
print(c)

自Numpy 1.16.3版本发行之后,函数 numpy.load() 和 numpy.lib.format.read_array() 采用allow_pickle关键字,现在默认为False
在这里插入图片描述

解决方案

方案1:降级到1.16.2
conda install numpy=1.16.2
方案2:加入allow_pickle=True

改为:np.load('save_a.npy', allow_pickle=True)

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

还能坚持

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值