Python多文件拷貝(進(jìn)程池)

#coding=utf-8
from multiprocessing import Pool,Queue
import os,time

filename = os.listdir("./test1")
#創(chuàng)建Queue隊(duì)列
queue = Queue(len(filename))


def copyFile(i):
#實(shí)現(xiàn)文件復(fù)制
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,))
#隊(duì)列中將copy完成的文件放入隊(duì)列中并打印進(jìn)度
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()
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容