浅谈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的高级Git库 Gittle
Sep 22 Python
在Python的Bottle框架中使用微信API的示例
Apr 23 Python
Python3使用requests登录人人影视网站的方法
May 11 Python
详解python脚本自动生成需要文件实例代码
Feb 04 Python
python 实现GUI(图形用户界面)编程详解
Jul 17 Python
如何安装2019Pycharm最新版本(详细教程)
Sep 26 Python
如何在mac环境中用python处理protobuf
Dec 25 Python
pytorch+lstm实现的pos示例
Jan 14 Python
python开发前景如何
Jun 11 Python
python爬虫数据保存到mongoDB的实例方法
Jul 28 Python
python实现暗通道去雾算法的示例
Sep 27 Python
python异常中else的实例用法
Jun 15 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提交表单时判断 if($_POST[submit])与 if(isset($_POST[submit])) 的区别
2011/02/08 PHP
php中比较简单的导入phpmyadmin生成的sql文件的方法
2011/06/28 PHP
让Json更懂中文(JSON_UNESCAPED_UNICODE)
2011/10/27 PHP
通达OA公共代码 php常用检测函数
2011/12/14 PHP
ThinkPHP项目分组配置方法分析
2016/03/23 PHP
如何正确配置Nginx + PHP
2016/07/15 PHP
js 延迟加载 改变JS的位置加快网页加载速度
2012/12/11 Javascript
JSON辅助格式化处理方法
2013/03/26 Javascript
JavaScript实现对下拉列表值进行排序的方法
2015/07/15 Javascript
跟我学习javascript的for循环和for...in循环
2015/11/18 Javascript
jquery操作checkbox火狐下第二次无法勾选的解决方法
2016/10/10 Javascript
巧用Javascript的逻辑运算符
2016/12/02 Javascript
JavaScript常用正则验证函数实例小结【年龄,数字,Email,手机,URL,日期等】
2017/01/23 Javascript
JS沙箱模式实例分析
2017/09/04 Javascript
React-router4路由监听的实现
2018/08/07 Javascript
详解使用Nuxt.js快速搭建服务端渲染(SSR)应用
2019/03/13 Javascript
elementUI select组件使用及注意事项详解
2019/05/29 Javascript
在windows下快速搭建web.py开发框架方法
2016/04/22 Python
谈谈如何手动释放Python的内存
2016/12/17 Python
用python写个自动SSH登录远程服务器的小工具(实例)
2017/06/17 Python
详解flask表单提交的两种方式
2018/07/21 Python
PyQT5 QTableView显示绑定数据的实例详解
2019/06/25 Python
Django 实现Admin自动填充当前用户的示例代码
2019/11/18 Python
python filecmp.dircmp实现递归比对两个目录的方法
2020/05/22 Python
Python应用实现处理excel数据过程解析
2020/06/19 Python
PyCharm 解决找不到新打开项目的窗口问题
2021/01/15 Python
使用JS+CSS3技术:让你的名字动起来
2013/04/27 HTML / CSS
大学生个人求职信范文
2013/09/21 职场文书
颁奖晚会主持词
2014/03/25 职场文书
团党委领导干部党的群众路线教育实践活动个人对照检查材料思想汇
2014/10/05 职场文书
四则混合运算教学反思
2016/02/23 职场文书
2016学校先进集体事迹材料
2016/02/29 职场文书
使用PDF.js渲染canvas实现预览pdf的效果示例
2021/04/17 Javascript
Django实现翻页的示例代码
2021/05/24 Python
FFmpeg视频处理入门教程(新手必看)
2022/01/22 杂记
Hive常用日期格式转换语法
2022/06/25 数据库