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

yipeiwu_com5年前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 pass详细介绍及实例代码

Python pass的用法: 空语句 do nothing 保证格式完整 保证语义完整 以if语句为例,在c或c++/Java中: if(true) ; //do...

Python中的字符串操作和编码Unicode详解

本文主要给大家介绍了关于 Python中的字符串操作和编码Unicode的一些知识,下面话不多说,需要的朋友们下面来一起学习吧。 字符串类型 str:Unicode字符串。采...

Python中random模块生成随机数详解

Python中的random模块用于生成随机数。下面介绍一下random模块中最常用的几个函数。 random.random random.random()用于生成一个0到1的随机符点...

python安装twisted的问题解析

python安装twisted的问题解析

今天在用pip安装wisted模块的时候没有任何的问题,但是当使用的时候发生了,无法导入win32api这个包,原因是因为python不能自己去使用系统的api。因此需要去安装pywin...

spark dataframe 将一列展开,把该列所有值都变成新列的方法

spark dataframe 将一列展开,把该列所有值都变成新列的方法

The original dataframe 需求:hour代表一天的24小时,现在要将hour列展开,每一个小时都作为一个列 实现: val pivots = beijingGe...