开发者社区> 问答> 正文

python中如何将文件映射到内存?

python中如何将文件映射到内存?

展开
收起
真的很搞笑 2021-12-05 00:13:25 378 0
1 条回答
写回答
取消 提交回答
  • 使用标准库中的 mmap 模块的 mmap() 函数,它需要一个打开的文件描述符作为参数 创建如下文件 [root@iZ28i253je0Z ~]# dd if=/dev/zero of=demo.bin bs=1024 count=1024 1024+0 records in 1024+0 records out 1048576 bytes (1.0 MB) copied, 0.00380084 s, 276 MB/s

    以十六进制格式查看文件内容

    [root@iZ28i253je0Z ~]# od -x demo.bin 0000000 0000 0000 0000 0000 0000 0000 0000 0000 * 4000000

    import mmap import os f = open('demo.bin','r+b')

    获取文件描述符

    f.fileno() 3 m = mmap.mmap(f.fileno(),0,access=mmap.ACCESS_WRITE) type(m) <type 'mmap.mmap'>

    可以通过索引获取内容

    m[0] '\x00' m[10:20] '\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'

    修改内容

    m[0] = '\x88'

    2021-12-05 00:14:21
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Python 系列直播——深入Python与日志服务,玩转大规模数据分析处理实战第二讲 立即下载
Python第四讲——使用IPython/Jupyter Notebook与日志服务玩转超大规模数据分析与可视化 立即下载
Improving Python and Spark 立即下载