我已经从磁盘读取了一个二进制文件。它产生一个字节变量,例如
arr = open(file, "rb").read()
现在 arr
的结构使得每个 4 字节形成一个 32 位整数(小端)。我看到有函数 int.from_bytes
可以将 bytes 转换为 int,但它太慢了。
是否有将字节转换为整数数组的函数?欢迎使用 Numpy 解决方案。
相比之下,这在 R 和 Julia 中似乎很容易做到,例如
在 R 中
readBin(arr, what="integer", n=length(arr)/4)
Julia
reinterpret(Int32, arr)
最佳答案
根据@Tim Peter 的回答是
b = array.array("i")
b.frombytes(arr)
现在 b
是一个 int 数组。
请在此处查看文档 https://docs.python.org/3/library/array.html#module-array
关于Python:如何有效地将字节转换为整数数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61435582/