Mik*_*and 4 python arrays ctypes initialization
使用Python数组,我可以使用以下(当然不是完美的Pythonic)命令初始化32,487,834整数数组(在文件HR.DAT中找到):
F = open('HR.DAT','rb')
HR = array('I',F.read())
F.close()
Run Code Online (Sandbox Code Playgroud)
我需要在ctypes中做同样的事情.到目前为止,我所拥有的最好的是:
HR = c_int * 32487834
Run Code Online (Sandbox Code Playgroud)
我不知道如何使用HR.DAT初始化数组的每个元素.有什么想法吗?
谢谢,
麦克风
文件对象具有'readinto(..)'方法,可用于填充支持缓冲区接口的对象.
所以,这样的事情应该有效:
f = open('hr.dat', 'rb')
array = (c_int * 32487834)()
f.readinto(array)
Run Code Online (Sandbox Code Playgroud)