Python 是否可以更改(更新)已保存在.npy文件中的numpy数组的条目?怎么用?

Python 是否可以更改(更新)已保存在.npy文件中的numpy数组的条目?怎么用?,python,numpy,Python,Numpy,我在磁盘上保存了一个.npy格式的numpy数组,我使用np.load()加载它,但我不知道如何将我所做的更改保存在磁盘上。您可以探索两个选项。首先,如果您知道文件中更改的位置,您可以: file = open("path/to/file", "rb+") file.seek(position) file.seek(file.tell()). # There seems to be a bug in python which requires you to do this file.write(

我在磁盘上保存了一个.npy格式的numpy数组,我使用np.load()加载它,但我不知道如何将我所做的更改保存在磁盘上。

您可以探索两个选项。首先,如果您知道文件中更改的位置,您可以:

file = open("path/to/file", "rb+")
file.seek(position)
file.seek(file.tell()). # There seems to be a bug in python which requires you to do this
file.write("new information") # Overwriting contents
另请参见为什么
file.seek(file.tell())

第二个是保存修改后的数组本身

myarray = np.load("/path/to/my.npy")
myarray[10] = 50.0 # Any new value
np.save("/path/to/my.npy", myarray)

使用“保存”按钮,您只需再次保存阵列;没有覆盖现有保存的文件。
npy
文件是二进制文件,而不是文本。该文件包含数据缓冲区的字节图像,但我们通常不知道特定元素出现在何处。@hpaulj,编辑了answer now,以反映
npy
是一个二进制文件。确实,很难知道某个特定元素发生在哪里,但答案也包括已知的情况。谢谢你,newkid。我使用np.save()来创建.npy文件,但我不认为也可以使用它来保存我所做的磁盘更改。这一点现在很明显。再次感谢,非常感谢