本文字数:2096 字
阅读本文大概需要:6 分钟
“在吗?”
挣扎良久,小R放下了二郎腿,按下了键盘:
“在”
此时心里已经在自导自演各种应对场景:
“要是借钱,我就...”
“要是结婚,我就...”
“....”
有一条消息过来,在它闪动的第24 次小R打开了聊天窗口:“听说你是 Python 大佬,我有一个问题想问你。”
嘿,吓死我了,你早说啊,此时小R内心一阵窃喜:“哎呀,我这么低调,竟然被人发现大佬的身份啦,看来我还要再低调一点,哈哈哈哈哈哈...”
低调的小R低调的在窗口敲下了如下内容:
“哎呀,没有啦,你有什么问题,随便问,没有我不会的。”
enter 一键发送。
小K:“太好了,Python 里面怎么设置文件的缓冲啊?”
小R:“....”
文件我懂,缓冲我懂,怎么设置,我哪知道怎么设置...
小K:“还在吗?”
好想说不在,当然认真负责的小R当然不会这样,有句伟大的“名言”怎么说的来着:自己的低调,跪着也要低调完...
于是,小R默默的打开了 Google...
00.文件的缓冲
如何设置文件的缓冲,先要知道什么是文件的缓冲:
当我们将文件内容写入到硬件设备的时候,我们需要系统调用(系统调用也就是向操作系统申请一个服务,操作系统响应以后,帮助我们调用硬件的驱动程序)来完成写操作,这类操作我们也就是 I/O 操作。I/O 操作很耗时,为了提高效率,我们就要减少 I/O 操作的次数,我们使用的手段就是为文件设置一个缓冲区。
对于磁盘这种块设备,它的读写不是一个一个的字节,而是按“块”。假设一个“块”的大小是 4096 个字节,你写入一个字节,或者写入 4096 个字节,都需要一次 I/O 操作,设置缓冲区,当写入的数据不足一个“块”大小时,都放入到缓冲区当中,等凑够了一个“块”的数据量,再调用一次 I/O 操作,这样达到减少 I/O 操作的目的。
01.Python中文件对象的缓冲行为
文件的缓冲一般分为“全缓冲”、“行缓冲”、“无缓冲”。
f = open('test.txt','w')
f = open('test.txt','w')
f.write('abc')
f = open('test1.txt','w',buffering=1024)
f.write('*'*512)
f = open('test1.txt','w',buffering=1024)
f.write('*'*512)
f.write('*'*511)
f.write('/')
👆扫描上方二维码即可关注
转载:https://blog.csdn.net/u013486414/article/details/100978601