开发者社区> 问答> 正文

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

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

展开
收起
cuicuicuic 2021-12-05 00:13:25 356 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
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Improving Python and Spark 立即下载
Improving Python and Spark Per 立即下载
From Python Scikit-Learn to Sc 立即下载