Vin*_*ent 3 python arrays binaryfiles
我目前正在尝试使用以下技术读取python的fortran文件
with open(myfile, "rb") as f:
for i in range (0, n):
s = struct.unpack('=f', f.read(4))
mylist.append(s[0])
Run Code Online (Sandbox Code Playgroud)
但是对于大型阵列来说它非常慢.有没有办法一次读取整个循环的内容并将其放到mylist中以避免逐个转换/追加每个项目?
非常感谢你.
int*_*jay 11
这就是该array模块的用途:
a = array.array('f')
a.fromfile(f, n)
Run Code Online (Sandbox Code Playgroud)
现在您可以像正常序列类型一样使用数组对象.如果需要,您还可以将其转换为列表tolist.