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

yipeiwu_com7年前Python基础

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

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

程序一:

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文本文件操作技巧汇总》、《Python URL操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

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

相关文章

Python不同目录间进行模块调用的实现方法

Python不同目录间进行模块调用的实现方法

一、背景 之前写了软件开发目录规范这篇博客,相信很多人都已经知道,我们在写程序时需要遵循一定的规范,不然,就算很简答的逻辑程序的代码,读起来会很费劲,占用了我们大量的时间,但是,我们一...

Python中pygal绘制雷达图代码分享

Python中pygal绘制雷达图代码分享

pygal的安装和简介,大家可以参阅《pip和pygal的安装实例教程》,下面看看通过pygal实现绘制雷达图代码示例。 雷达图(Radar): import pygal rada...

python顺序执行多个py文件的方法

假如我要执行code目录下的python程序,假设该目录下有1.py,2.py,3.py,4.py四个文件,但是我想执行1.py,2.py,4.py,则可在该目录下创建一个python文...

Python卸载模块的方法汇总

easy_install 卸载 通过easy_install 安装的模块可以直接通过  easy_install -m PackageName 卸载,然后删除\Python27...

Django数据库表反向生成实例解析

本文我们研究下如何在django中反向生成mysql model代码,接下来我们看看具体介绍。 我们在展示django ORM反向生成之前,我们先说一下怎么样正向生成代码。 正向生成,指...