如下所示:
#統(tǒng)計(jì)某文件夾下的所有csv文件的行數(shù)(多線程)import threadingimport csvimport os class MyThreadLine(threading.Thread): #用于統(tǒng)計(jì)csv文件的行數(shù)的線程類 def __init__(self,path): threading.Thread.__init__(self) #父類初始化 self.path=path #路徑 self.line=-1 #統(tǒng)計(jì)行數(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) #存儲(chǔ)了所有的csv文件名threadlist=[] #線程列表for filename in filelist: newpath=path+"/"+filename #代表絕對(duì)路徑 mythd=MyThreadLine( newpath) #創(chuàng)建線程類對(duì)象 mythd.start() #線程開始干活 threadlist.append(mythd) #增加線程到線程列表for mythd in threadlist: #遍歷每一個(gè)線程 mythd.join() #等待所有線程干完活,再繼續(xù)執(zhí)行以下代碼linelist=[] #csv文件行數(shù)列表for mythd in threadlist: linelist.append(mythd.line)print(linelist)
以上這篇對(duì)Python 多線程統(tǒng)計(jì)所有csv文件的行數(shù)方法詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持武林站長站。
新聞熱點(diǎn)
疑難解答
圖片精選