溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

對(duì)Python 多線程統(tǒng)計(jì)所有csv文件的行數(shù)方法詳解

發(fā)布時(shí)間:2020-09-04 12:11:09 來源:腳本之家 閱讀:214 作者:houyanhua1 欄目:開發(fā)技術(shù)

如下所示:

#統(tǒng)計(jì)某文件夾下的所有csv文件的行數(shù)(多線程)
import threading
import csv
import 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è)參考,也希望大家多多支持億速云。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI