Python:如何有效地将字节转换为整数数组?

问题描述 投票:1回答:1

我已经从磁盘读取了一个二进制文件。产生一个字节变量,例如

arr = open(file, "rb").read()

现在arr的结构使得每个4字节形成一个32位整数(小尾数)。我看到有函数int.from_bytes可以将字节转换为int,但速度太慢。

是否有将字节转换为整数数组的函数?欢迎使用Numpy解决方案。

相反,这在R和Julia中似乎很容易做到,例如

在R中

readBin(arr, what="integer", n=length(arr)/4)

朱莉娅

reinterpret(Int32, arr)
python arrays byte binaryfiles
1个回答
0
投票

根据@Tim Peter的回答,是

b = array.array("i")
b.frombytes(arr)

现在b是一个整数数组。

在此处查看文档https://docs.python.org/3/library/array.html#module-array

© www.soinside.com 2019 - 2024. All rights reserved.