Numpy fromfile的两个实现?

时间:2017-03-20 18:18:49

标签: python python-3.x numpy binary fromfile

我正在尝试更新在方法中使用public class SomeVM { public GalleryVM Gallery { get; set; } } public class GalleryVM { public IFormFile UploadingImage { get; set; } public bool FormFileHack { get; set; } //gallery properties... } //the view .cshtml <input type="file" name="Gallery.UploadingImage" /> <input type="hidden" name="Gallery.FormFileHack" /> 的一些遗留代码。当我尝试搜索此方法的numpy来源时,我只找到np.core.records.fromfile,但是当您搜索文档时,您可以找到np.fromfile。看看这两种方法,你可以看到它们有不同的kwargs,这让我觉得它们完全是不同的方法。

我的问题是:

1)np.fromfile的来源位于何处?

2)为什么同名下有两个不同的功能?如果你不小心差异,这显然会让人感到困惑,因为两者的表现不同。如果您尝试读取的字节多于文件包含的字节,np.fromfile会导致错误,而np.core.records.fromfile则不会。你可以在下面找到一个最小的例子。

np.fromfile

1 个答案:

答案 0 :(得分:3)

如果您在help上使用np.fromfile,您会发现非常有用的内容:

Help on built-in function fromfile in module numpy.core.multiarray:

fromfile(...)
    fromfile(file, dtype=float, count=-1, sep='')

    Construct an array from data in a text or binary file.

    A highly efficient way of reading binary data with a known data-type,
    as well as parsing simply formatted text files.  Data written using the
    `tofile` method can be read using this function.

据我所知,这是在C中实现的,可以找到here

如果您尝试保存并加载二进制数据,则不应再使用np.fromfile。您应该使用np.savenp.load,它们将使用与平台无关的二进制格式。