当程序需要写入日志文件时常常需要实时写入字符串,此时需要用到无缓冲写入。
正常写入数据时,只有数据长度达到上限或者是关闭文件时才会将内容写入到硬盘。在Python2中可以用buffering参数实现无缓冲写入:
with open('./log.txt','a',buffering=0) as file:
file.write('test\n')
但是在Python3中只有在写入二进制内容时才可以使用buffering参数,如果写入字符串会报错,此时可以用flush()
方法实现同样的功能:
with open('./log.txt','a') as file:
file.write('test\n')
file.flush()
flush()
方法的功能为将缓冲区的数据写入硬盘,同时清空缓冲区。
今天的文章用Python3实时无缓冲写入数据分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/31960.html