如下所示:
#統(tǒng)計某文件夾下的所有csv文件的行數(shù)(多線程) import threading import csv import os class MyThreadLine(threading.Thread): #用于統(tǒng)計csv文件的行數(shù)的線程類 def __init__(self,path): threading.Thread.__init__(self) #父類初始化 self.path=path #路徑 self.line=-1 #統(tǒng)計行數(shù) def run(self): reader = csv.reader(open(self.path, "r")) # 讀取csv文件 lines=0 for item in reader: # 讀取每一行 lines+=1 self.line=lines #保存行數(shù) print(self.getName(),self.line) path="C:\\Users\\aa\\csv" #所有csv文件所在的文件夾 filelist=os.listdir(path) #存儲了所有的csv文件名 threadlist=[] #線程列表 for filename in filelist: newpath=path+"\\"+filename #代表絕對路徑 mythd=MyThreadLine( newpath) #創(chuàng)建線程類對象 mythd.start() #線程開始干活 threadlist.append(mythd) #增加線程到線程列表 for mythd in threadlist: #遍歷每一個線程 mythd.join() #等待所有線程干完活,再繼續(xù)執(zhí)行以下代碼 linelist=[] #csv文件行數(shù)列表 for mythd in threadlist: linelist.append(mythd.line) print(linelist)