# -*- 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 not buffer:
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)