python mmap 对二进制文件做内存映射
2022-05-20 本文已影响0人
孙广宁
5.10 我们想用内存映射的方式,将一个二进制文件加载到可变数组中,这样可以随机访问内容,还可以随时修改
- 可以使用mmap模块对文件做内存映射
>>> size =1000000
>>> with open('test.data','wb') as f:
... f.seek(size-1)
... f.write(b'\x00')
...
999999
1
- 使用上边的函数可以给test.data文件填充内容
>>> with open('test.data','rb') as f:
... f.read()
...
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00...........
- 我们使用上述自定义的m函数对test.data文件进行读写
>>> m = m('test.data')
>>> len(m)
1000000
>>> m[0:5]
b'\x00\x00\x00\x00\x00'
>>>