#!/usr/bin/env python
# -*- coding: utf-8 -*-
import time
def timeo(fun, n=10):
start= time.clock()
for i in range(n): fun()
stend = time.clock()
thetime = stend-start
return fun.__name__, thetime #返回函数名称,函数运行10次总时间的 元组
import os
fname="YourFileName"
def linecount_wc():
return int(os.popen('wc -l nuc').read().split()[0])#使用外部系统程序 wc -l
def linecount_1(): #使用方法1
return len(open(fname).readlines())
def linecount_2(): #使用方法2
count= 0
for line in open(fname).xreadlines(): count+= 1
return count
def linecount_3(): #使用方法3
count = 0
thefile = open(fname)
while 1:
buffer= thefile.read(65536)
if notbuffer: break
count += buffer.count('\n')
return count
def linecount_4(): #方法4
count=0
for line in open(fname):
#if(line!='\n'): count+=1
count+=1
return count
for f in linecount_1, linecount_2, linecount_3,linecount_4:
print f.__name__, f()
for f in linecount_1, linecount_2, linecount_3,linecount_4:
print "%s: %.2f"%timeo(f)
推荐方法三
原文地址 http://www.linuxany.com/archives/391.html