今天在定位一个问题,主体是两个文件的通过某个字段关联,然后合并写入第三个文件。
在少量数据测试时OK,无明显错误,
但数据量较大时,执行完成后(无报错),
检查输出文件,发现到一定的行数以后,截断了。
于是在写入文本命令前print,查看结果也没问题,但是写入文本,就是缺少数据。
无奈,后将该脚本上传至Linux执行,输出文件竟然是完整的
百思不得其解。
后联想到以前好像看过f.write(line)并不是直接写入文本,会有一个缓存,然后写入(难道因为数据量太大超过缓存最大值??)
于是验证是否有这方面的原因,
baidu得知 f=open('test.unl','w',0) 改函数有第三个参数,为0是不缓存。于是添加了该参数,再次
执行,输出文件完整无丢失。
ps:以上个人猜测,未严格验证
阅读(749) | 评论(0) | 转发(0) |