浅谈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复制文件代码实现
Dec 23 Python
Python判断变量是否已经定义的方法
Aug 18 Python
python对字典进行排序实例
Sep 25 Python
python常用知识梳理(必看篇)
Mar 23 Python
tensorflow创建变量以及根据名称查找变量
Mar 10 Python
python 删除指定时间间隔之前的文件实例
Apr 24 Python
Python之list对应元素求和的方法
Jun 28 Python
Python 面试中 8 个必考问题
Nov 16 Python
pygame游戏之旅 如何制作游戏障碍
Nov 20 Python
Python日志无延迟实时写入的示例
Jul 11 Python
简单了解python 邮件模块的使用方法
Jul 24 Python
python实现提取str字符串/json中多级目录下的某个值
Feb 27 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实现window平台的checkdnsrr函数
2015/05/27 PHP
thinkPHP的表达式查询用法详解
2016/09/14 PHP
thinkPHP模板中函数的使用方法示例
2016/11/30 PHP
PHP使用finfo_file()函数检测上传图片类型的实现方法
2017/04/18 PHP
PHP实现的链式队列结构示例
2017/09/15 PHP
PHP接口类(interface)的定义、特点和应用示例
2020/05/18 PHP
一份老外写的XMLHttpRequest代码多浏览器支持兼容性
2007/01/11 Javascript
基于JQuery的简单实现折叠菜单代码
2010/09/15 Javascript
基于jquery的无刷新分页技术
2011/06/11 Javascript
javascript面向对象之this关键词用法分析
2015/01/13 Javascript
JavaScript跨浏览器获取页面中相同class节点的方法
2015/03/03 Javascript
jQuery原理系列-css选择器的简单实现
2016/06/07 Javascript
详解Vue打包优化之code spliting
2018/04/09 Javascript
Vue v-bind动态绑定class实例方法
2020/01/15 Javascript
python2 与python3的print区别小结
2018/01/16 Python
Python生成器定义与简单用法实例分析
2018/04/30 Python
bluepy 一款python封装的BLE利器简单介绍
2019/06/25 Python
基于Python函数和变量名解析
2019/07/19 Python
Python操作redis和mongoDB的方法
2019/12/19 Python
使用 pytorch 创建神经网络拟合sin函数的实现
2020/02/24 Python
解决windows上安装tensorflow时报错,“DLL load failed: 找不到指定的模块”的问题
2020/05/20 Python
浅谈sklearn中predict与predict_proba区别
2020/06/28 Python
Django+Uwsgi+Nginx如何实现生产环境部署
2020/07/31 Python
python判断元素是否存在的实例方法
2020/09/24 Python
css3 按钮 利用css3实现超酷下载按钮
2013/03/18 HTML / CSS
中国高端家电购物商城:顺电
2018/03/04 全球购物
英国网上超市:Ocado
2020/03/05 全球购物
请解释接口的显式实现有什么意义
2012/05/26 面试题
趣味比赛活动方案
2014/02/15 职场文书
认识深刻的检讨书
2014/02/16 职场文书
消防安全月活动总结
2015/05/08 职场文书
论语读书笔记
2015/06/26 职场文书
青少年法制教育心得体会
2016/01/14 职场文书
导游词之五台山
2019/10/11 职场文书
详解Node.js如何处理ES6模块
2021/05/15 Javascript
Redis实现分布式锁的五种方法详解
2022/06/14 Redis