python_如何设置文件缓冲类型

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python_如何设置文件缓冲类型相关的知识,希望对你有一定的参考价值。

案例:

       将文件内容写入到硬件设备时候,使用系统调用,这类IO操作时间长,为了减小IO操作,通常会使用缓冲区(有足够多数据才能调用)。

    文件缓冲行为分为:全缓冲,行缓冲,无缓冲

如何解决?

       open(‘’, ‘’, buffering = a)          # buffering设置缓冲行为

         全缓冲: a 是正整数,当缓冲区文件大小达到a大小时候,写入磁盘

         行缓冲: buffering = 1, 缓冲区碰到 \n 换行符的时候就写入磁盘

         无缓冲:buffering = 0 ,写多少,存多少

#!/usr/bin/python3

# 设置定长缓冲区
with open(‘test.text‘, ‘w+‘, encoding=‘utf-8‘, buffering=20) as f:
    f.write(‘hello word!‘)
    f.write(‘定个小目标,挣它一个亿‘)
    f.write(‘are you ok‘)

# 设置行缓冲
with open(‘test_1.text‘, ‘w+‘, encoding=‘utf-8‘, buffering=1) as f:
    f.write(‘hello word!\n‘)
    f.write(‘定个小目标,挣它一个亿\n‘)
    f.write(‘are you ok\n‘)

#设置无缓冲
# 注意,text文件类型必须要写缓冲区
with open(‘test_2.text‘, ‘wb+‘, buffering=0) as f:
    f.write(b‘hello word!\n‘)
    f.write(b‘are you ok‘)

  

以上是关于python_如何设置文件缓冲类型的主要内容,如果未能解决你的问题,请参考以下文章

如何在python代码中添加字符串或缓冲区?

如何在 python 中并行化以下代码片段?

ValueError:无效的文件路径或缓冲区对象类型:<class 'dict'> python

C语言如何判断文件类型?

在 Metal 中,将顶点和片段缓冲区设置为相同的 MTLBuffer 是不是仅将其复制到 GPU 一次?

[Go] 通过 17 个简短代码片段,切底弄懂 channel 基础