加载npy数组时无法将文件%s解释为pickle

2024-04-19 00:07:22 发布

您现在位置:Python中文网/ 问答频道 /正文

嗨,我是python的新用户,想导入保存的npy数组。当尝试加载npy数组时,我得到以下错误消息。提前谢谢!

import numpy as np

A = np.load('C:/Final Runs/lineTank.npy')

我收到这些错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python27\lib\site-packages\numpy\lib\npyio.py", line 384, in load
    "Failed to interpret file %s as a pickle" % repr(file))
IOError: Failed to interpret file 'C:/Final Runs/lineTank.npy' as a pickle

Tags: innumpylibas错误nplineruns
2条回答

您可能需要先将文件加载到字符串中,然后再对字符串执行numpy.load()操作。

类似于:

with f as file.open(filename):
  foo = f.readlines()
bar = numpy.load(foo)

谢谢你们的帮助。我意识到“乔·金顿”是对的。该文件是使用传统的python写入文件而不是numpy创建的。这是我用过的(没用的):

f = open(Filename, "w")
try:
    f.write(a)
finally:
    f.close()

与使用numpy的save相反,后者有效:

import numpy as np
np.save(Filename, a)
a = np.load(Filename)

相关问题 更多 >