Cython优化读取二进制fi

2024-09-28 21:02:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在努力改进这个cython代码(有效)。请注意,我不想使用numpy.fromfile文件.. 因为我希望能够解析不固定的二进制结构。在

from libc.stdio cimport *  
import struct


cpdef inline cimport_td(char* f, double[:] dates, double[:] tpx, int[:] tvo):
    f_b = open(f.replace('\\','/'),'rb').read()

    cdef int B = len(f_b), bb = 0, dd = 0
    while bb < B:   
        dates[dd], tpx[dd], tvo[dd] = struct.unpack('ddi', f_b[bb:bb+20])      
        bb += 20
        dd += 1

    del f_b
    return dates, tpx, tvo

有什么比打开/读取和结构解压缩更好的方法吗?在

谢谢。在


Tags: 文件代码numpy结构structcythonddint