浅谈python写入大量文件的问题


Posted in Python onNovember 09, 2018

今天准备把几个txt文件合并成一个文件时,用f.write方法写入时,发现程序执行完了,本应该十万行左右的txt记录,实际上只被写入了4k多行。

网上查了是因为程序执行速度太快,以至于读到内容还没有完全写入文件,文件就已经关闭了

方法一:加入缓冲区

f.flush()
//operation
os.fsync(output)
f.close()

打开文件后执行flush(),关闭文件前执行os.fsync()确保缓冲区的内容都写出去了。

方法二:用sleep

用了上述方法不行,因为我在打开文件后用了迭代输出,可能会让缓冲区爆炸,在循环中加入sleep函数可以确保每次循环都能将内容写入

with open(outputfile,'a') as output:
  for i in all_txt_name:
   f =open(dir+'/'+i)
   for a in f:
    output.write(a)
    time.sleep(0.00000001)
   f.close()

后来发现:

txt文件如果太大,在pycharm中只会显示一小部分,可能是指显示了部分文件导致未以为文件没写进去,fuck

以上这篇浅谈python写入大量文件的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python写的一个简单DNS服务器实例
Jun 04 Python
python实现简单socket程序在两台电脑之间传输消息的方法
Mar 13 Python
Python实现Linux中的du命令
Jun 12 Python
Python实现生成随机数据插入mysql数据库的方法
Dec 25 Python
Django框架的中的setting.py文件说明详解
Oct 15 Python
Python代码打开本地.mp4格式文件的方法
Jan 03 Python
详解Numpy数组转置的三种方法T、transpose、swapaxes
May 27 Python
python 实现单通道转3通道
Dec 03 Python
pytorch实现保证每次运行使用的随机数都相同
Feb 20 Python
windows、linux下打包Python3程序详细方法
Mar 17 Python
基于python实现坦克大战游戏
Oct 27 Python
Python四款GUI图形界面库介绍
Jun 05 Python
启动Atom并运行python文件的步骤
Nov 09 #Python
Python产生Gnuplot绘图数据的方法
Nov 09 #Python
python pyheatmap包绘制热力图
Nov 09 #Python
Django 视图层(view)的使用
Nov 09 #Python
Python创建一个空的dataframe,并循环赋值的方法
Nov 08 #Python
CentOS 7下安装Python3.6 及遇到的问题小结
Nov 08 #Python
python 高效去重复 支持GB级别大文件的示例代码
Nov 08 #Python
You might like
收藏的一个php小偷的核心程序
2007/04/09 PHP
Symfony生成二维码的方法
2016/02/04 PHP
PHP实现基于mysqli的Model基类完整实例
2016/04/08 PHP
学习thinkphp5.0验证类使用方法
2017/11/16 PHP
php遍历目录下文件并按修改时间排序操作示例
2019/07/12 PHP
Javascript YUI 读码日记之 YAHOO.util.Dom - Part.2 0
2008/03/22 Javascript
js身份证验证超强脚本
2008/10/26 Javascript
JavaScript 对象、函数和继承
2009/07/07 Javascript
JS获取url链接字符串 location.href
2013/12/23 Javascript
js通过元素class名字获取元素集合的具体实现
2014/01/06 Javascript
jQuery中get()方法用法实例
2014/12/27 Javascript
Node.js 去掉种子(torrent)文件里的邪恶信息
2015/03/27 Javascript
AngularJs 弹出模态框(model)
2016/04/07 Javascript
javascript基本语法
2016/05/31 Javascript
Angular中封装fancyBox(图片预览)遇到问题小结
2017/09/01 Javascript
react router 4.0以上的路由应用详解
2017/09/21 Javascript
JavaScript伪数组用法实例分析
2017/12/22 Javascript
微信小程序用户授权、位置授权及获取微信绑定手机号
2019/07/18 Javascript
详解JavaScript 事件流
2020/09/02 Javascript
vue-cli3访问public文件夹静态资源报错的解决方式
2020/09/02 Javascript
[20:39]DOTA2-DPC中国联赛 正赛开幕式 1月18日
2021/03/11 DOTA
Python用Pillow(PIL)进行简单的图像操作方法
2017/07/07 Python
Python实现PS滤镜中马赛克效果示例
2018/01/20 Python
Python爬虫headers处理及网络超时问题解决方案
2020/06/19 Python
python 读取、写入txt文件的示例
2020/09/27 Python
Django框架请求生命周期实现原理
2020/11/13 Python
css3 实现滚动条美化效果的实例代码
2021/01/06 HTML / CSS
建筑装饰学院室内设计专业个人自我评价
2013/12/07 职场文书
大学生村官心得体会范文
2014/01/04 职场文书
学生会竞聘书范文
2014/03/31 职场文书
电台编导求职信
2014/05/06 职场文书
奥巴马上海演讲稿
2014/09/10 职场文书
2015年母亲节活动策划方案
2015/05/04 职场文书
文明礼貌主题班会
2015/08/14 职场文书
使用HTML+Css+transform实现3D导航栏的示例代码
2021/03/31 HTML / CSS
CentOS7设置ssh服务以及端口修改方式
2022/12/24 Servers