# coding=utf-8
import os
import time
# 需要統計的文件夾或者文件,這是在windows下運行的,如果使用Linux系統可以使用 basedir = '/app/log'
basedir = 'C:\\Users\Administrator\\PycharmProjects\\beijinghuanyuan\\CicQuotation'
filelists = []
# 指定想要統計的文件類型
whitelist = ['php', 'py']
#遍歷文件, 遞歸遍歷文件夾中的所有
def getFile(basedir):
global filelists
for parent,dirnames,filenames in os.walk(basedir):
for filename in filenames:
ext = filename.split('.')[-1]
#只統計指定的文件類型,略過一些log和cache文件
if ext in whitelist:
filelists.append(os.path.join(parent,filename))
#統計一個文件的行數
def countLine(fname):
count = 0
for file_line in open(fname).xreadlines():
if file_line != '' and file_line != '\n': #過濾掉空行
count += 1
print fname + '----' , count
return count
if __name__ == '__main__' :
startTime = time.clock()
getFile(basedir)
totalline = 0
for filelist in filelists:
totalline = totalline + countLine(filelist)
print 'total lines:',totalline
print 'Done! Cost Time: %0.2f second' % (time.clock() - startTime)
本文鏈接:http://www.cnblogs.com/xuchunlin/p/6676306.html