#coding=utf-8
from multiprocessing import Pool,Queue
import os,time
filename = os.listdir("./test1")
#创建Queue队列
queue = Queue(len(filename))
def copyFile(i):
#实现文件复制
oldFileName = "./test1/" + i
newFileName = "./test2/" + i
oldfile = open(oldFileName,'r')
newfile = open(newFileName,'w')
for lineContent in oldfile.readlines():
newfile.write(lineContent)
oldfile.close()
newfile.close()
if __name__ == '__main__':
pool = Pool(4)
for i in filename:
pool.apply_async(copyFile,(i,))
#队列中将copy完成的文件放入队列中并打印进度
queue.put(i)
price = str(int((queue.qsize()/len(filename))*100))
print('\r'+' '*60,end='')
print('\r'+price+'%'+'=======>%s'%i,end='')
time.sleep(0.07)
print('')
pool.close()
pool.join()
Python多文件拷贝(进程池)
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 此篇为学习Python多进程这个知识点是的练习Demo,有兴趣的可以看一下。这 里面涉及到的知识点有:进程池(Po...
- 当需要创建的子进程数量不多时,可以直接利用multiprocessing中的Process动态成生多个进程,但如果...
- 关键词:python2.7 multiprocessing logger 单例 前言 前言,很多人提起python...
- 过程 1.引入模块2.实例化Pool3.向Pool提交任务4.关闭进程池5.join进程同步 Demo
- 支持python2.7 3.5 3.6, 运用multiprocessing模块的Pool 异步进程池,分段读取...