python-mmap函数


  • 文件太大,放不进内存或占用大量内存, 可以考虑使用mmap函数。
    import struct
    import mmap
    import scipy.io as sio
    f = open('long_wav.bin', 'r+b')
    mm = mmap.mmap(f.fileno(), 0)
    data = np.array(list(struct.unpack('f' *round(((16000*4*40 ) /4)), mm[:16000*4*40])) )
    #sio.savemat('tmp111.mat', {'noise':data})
    mm.size()
    mm.close()
    f.close()