Python 多进程统计所有csv文件的行数

来源:互联网 发布:linux rm 通配符 编辑:程序博客网 时间:2024/06/01 19:01
#统计某文件夹下的所有csv文件的行数(多进程)import osimport multiprocessingimport csvdef getline(path,mylist):    reader = csv.reader(open(path, "r"))  #读取文件    lines = 0    for item in reader:  #读取每一行        lines += 1    print("self pid", os.getpid(),"lines",lines)    mylist.append(lines) #将csv文件的行数添加到行数列表if  __name__=="__main__":    path = "C:\\Users\\csv"  #存放所有csv文件的文件夹    filelist = os.listdir(path)  # 存储了所有的文件名    processlist = []  # 进程列表    mylist = multiprocessing.Manager().list() #多进程共享list,共享内存。存放所有csv文件的行数的List    for  filename  in filelist:        newpath=path+"\\"+filename #绝对路径        p=multiprocessing.Process(target=getline,args=(newpath,mylist)) #开启进程        p.start() #进程开始干活        processlist.append(p) #加入进程列表    for  mythd in processlist:#遍历每一个进程        mythd.join() #等待所有进程干完活    print(mylist)    print("完成")

原创粉丝点击