python写入文件代码_python写文件时,使用代码强制刷新文件

一、实验环境

1.Windows10x64

2.anaconda4.6.9 + python3.7.1(anaconda集成,不需单独安装)

3.pyinstaller3.5

二、任务需求

793034-20191218095039481-173615097.png

三、问题描述

1.文件1中内容,添加至总文件后,被后续的文件2覆盖!

2.文件1添加至总文件后,添加一行打印语句(打印语句执行需要时间),未被后续文件2覆盖!

四、问题分析

怀疑python写入文件,Windows操作系统未及时刷新,未执行真正的写动作,存在短暂延时,需要使用文件刷新函数。

五、文件刷新

1.为什么要刷新文件呢

答:首先我们就要知道电脑是怎么储存信息的,写的代码保存在缓存中当缓存满了之后就会将内容储存到硬盘中。

2.为什么要刷新文件

答:系统会自动储存信息,但是储存信息不及时,将导致快速操作同一文件失败或者意外断电后数据丢失。

六、文件刷新代码例子

def save_file(context=None,file_path=None):

"""

:param context: write content

:param file_path: write file path

:return:

"""

try:

df = open(file_path,'wb')

if context:

bin2str = binascii.a2b_hex(context)

else:

bin2str = binascii.a2b_hex(self._intercept_contents_filter)

debug_print(bin2str)

df.write(bin2str)

df.flush() #强制刷新

finally:

if df:

df.close()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值