Python读取文件内容的三种常用方式及效率比较


Posted in Python onOctober 07, 2017

本文实例讲述了Python读取文件内容的三种常用方式。分享给大家供大家参考,具体如下:

本次实验的文件是一个60M的文件,共计392660行内容。

Python读取文件内容的三种常用方式及效率比较

程序一:

def one():
  start = time.clock()
  fo = open(file,'r')
  fc = fo.readlines()
  num = 0
  for l in fc:
    tup = l.rstrip('\n').rstrip().split('\t')
    num = num+1
  fo.close()
  end = time.clock()
  print end-start
  print num

运行结果:0.812143868027s

程序二:

def two():
  start = time.clock()
  num = 0
  with open(file, 'r') as f:
    for l in f:
      tup = l.rstrip('\n').rstrip().split('\t')
      num = num+1
  end = time.clock()
  times = (end-start)
  print times
  print num

运行时间:0.74222778078

程序三:

def three():
  start = time.clock()
  fo = open(file,'r')
  l = fo.readline()
  num = 0
  while l:
    tup = l.rstrip('\n').rstrip().split('\t')
    l = fo.readline()
    num = num+1
  end = time.clock()
  print end-start
  print num

运行时间:1.02316120797

由结果可得出,程序二的速度最快。

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python中的Classes和Metaclasses详解
Apr 02 Python
Python中的元类编程入门指引
Apr 15 Python
python去除文件中空格、Tab及回车的方法
Apr 12 Python
django1.8使用表单上传文件的实现方法
Nov 04 Python
CentOS 7下Python 2.7升级至Python3.6.1的实战教程
Jul 06 Python
pandas中的DataFrame按指定顺序输出所有列的方法
Apr 10 Python
python实现猜单词小游戏
May 22 Python
Python内存读写操作示例
Jul 18 Python
python中map的基本用法示例
Sep 10 Python
python通过zabbix api获取主机
Sep 17 Python
Python BeautifulReport可视化报告代码实例
Apr 13 Python
pytorch 如何把图像数据集进行划分成train,test和val
May 31 Python
Python引用传值概念与用法实例小结
Oct 07 #Python
Python中执行存储过程及获取存储过程返回值的方法
Oct 07 #Python
Python使用cx_Oracle调用Oracle存储过程的方法示例
Oct 07 #Python
深入理解Django中内置的用户认证
Oct 06 #Python
Python3学习笔记之列表方法示例详解
Oct 06 #Python
python获取外网IP并发邮件的实现方法
Oct 01 #Python
Python之自动获取公网IP的实例讲解
Oct 01 #Python
You might like
全国FM电台频率大全 - 12 安徽省
2020/03/11 无线电
比较strtr, str_replace和preg_replace三个函数的效率
2013/06/26 PHP
Laravel的throttle中间件失效问题解决方法
2016/10/09 PHP
PHP工厂模式的日常使用
2019/03/20 PHP
解决Extjs上传图片无法预览的解决方法
2012/03/22 Javascript
js实现延时加载Flash的方法
2015/11/26 Javascript
jQuery 生成svg矢量二维码
2016/08/09 Javascript
js实现自定义路由
2017/02/04 Javascript
JavaScript代码执行的先后顺序问题
2017/10/29 Javascript
vue.js分页中单击页码更换页面内容的方法(配合spring springmvc)
2018/02/10 Javascript
jQuery动态操作表单示例【基于table表格】
2018/12/06 jQuery
Vue实现购物车实例代码两则
2020/05/30 Javascript
vue使用nprogress加载路由进度条的方法
2020/06/04 Javascript
vue添加自定义右键菜单的完整实例
2020/12/08 Vue.js
[02:30]DOTA2英雄基础教程 暗影恶魔
2013/12/17 DOTA
[01:43]深扒TI7聊天轮盘语音出处4
2017/05/11 DOTA
python分割文件的常用方法
2014/11/01 Python
Python中的__new__与__init__魔术方法理解笔记
2014/11/08 Python
深入理解NumPy简明教程---数组2
2016/12/17 Python
Python设计模式之MVC模式简单示例
2018/01/10 Python
python高效过滤出文件夹下指定文件名结尾的文件实例
2018/10/21 Python
linux安装python修改默认python版本方法
2019/03/31 Python
django连接oracle时setting 配置方法
2019/08/29 Python
python列表生成器迭代器实例解析
2019/12/19 Python
Python代码中如何读取键盘录入的值
2020/05/27 Python
Python内置异常类型全面汇总
2020/05/28 Python
Python+Kepler.gl实现时间轮播地图过程解析
2020/07/20 Python
Python接口自动化测试框架运行原理及流程
2020/11/30 Python
Spartoo荷兰:鞋子、包包和服装
2018/07/12 全球购物
德国咖啡批发商:Coffeefair
2019/08/26 全球购物
delegate与普通函数的区别
2014/01/22 面试题
新年抽奖获奖感言
2014/03/02 职场文书
品德评语大全
2014/05/05 职场文书
农民工工资承诺书大全
2015/05/04 职场文书
电力安全教育培训心得体会
2016/01/11 职场文书
详解Python描述符的工作原理
2021/06/11 Python