对python文件读写的缓冲行为详解

yipeiwu_com6年前Python基础

文件的io操作的缓冲行为分为

全缓冲:同系统及磁盘块大小有关,n个字节后执行一次写入操作

行缓冲:遇到换行符执行一次写操作

无缓冲:立刻执行写操作

open()函数

help(open)
Help on built-in function open in module io:
 
open(...)
  open(file, mode='r', buffering=-1, encoding=None,
     errors=None, newline=None, closefd=True, opener=None) -> file object

其中参数buffering控制缓冲行为

buffering默认为-1,系统默认的全缓冲

buffering可以设置为大于1的任意整数,字节数为buffering的全缓冲

buffering=1,设置为行缓冲模式

buffering=0, 设置为无缓冲模式

以上这篇对python文件读写的缓冲行为详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python实现自定义顺序、排列写入数据到Excel的方法

本文实例讲述了Python实现自定义顺序、排列写入数据到Excel的方法。分享给大家供大家参考,具体如下: 例1. 数据框顺序写入Excel: data=a import xlsxw...

仅利用30行Python代码来展示X算法

假如你对数独解法感兴趣,你可能听说过精确覆盖问题。给定全集 X 和 X 的子集的集合 Y ,存在一个 Y 的子集 Y*,使得 Y* 构成 X 的一种分割。 这儿有个Python写的例子。...

python3 实现的对象与json相互转换操作示例

本文实例讲述了python3 实现的对象与json相互转换操作。分享给大家供大家参考,具体如下: 1. python主要有三种数据类型:字典、列表、元组,其分别由花括号,中括号,小括号表...

深入浅析Python传值与传址

1. 传值与传址的区别 传值就是传入一个参数的值,传址就是传入一个参数的地址,也就是内存的地址(相当于指针)。他们的区别是如果函数里面对传入的参数重新赋值,函数外的全局变量是否相应改变:...

Python中GeoJson和bokeh-1的使用讲解

Python中GeoJson和bokeh-1的使用讲解

GeoJson 文档 { "type": "FeatureCollection", "features": [ { "geometry": { "type":...