系统相关
首页 > 系统相关> > python多进程multiprocessing实现拷贝

python多进程multiprocessing实现拷贝

作者:互联网

import os
import multiprocessing

def copy_file(file_name , source_dir, dest_dir):
    # 1.拼接源文件路径和目标文件路径
    source_path = source_dir + "/" + file_name
    dest_path = dest_dir + "/" + file_name

    # 2.打开源文件和目标文件
    with open(source_path, "rb") as source_file:
        with open(dest_path, "wb") as dest_file:
            # 3.循环读取源文件到目标路径
            while True:
                data = source_file.read(1024)
                if data:
                    dest_file.write(data)
                else:
                    break

if __name__ == '__main__':
    #1.定义源文件和目标文件夹
    source_dir = "python教学视频"
    dest_dir = "/home/python/桌面/test"
    #2.创建目标文件夹
    try:
        os.mkdir(dest_dir)
    except:
        print("目标文件夹已经存在")

    #3. 读取源文件夹的文件列表
    file_list = os.listdir(source_dir)

    #4.遍历文件列表实现拷贝
    for file_name in file_list:
        # 4.使用多进程实现多任务拷贝
        sub_process = multiprocessing.Process(target=copy_file,args=(file_name,source_dir,dest_dir))
        sub_process.start()


####额外注意,在多进程中。主进程结束,子进程是不会直接结束的。如果想主进程结束,子进程也结束的话,可以添加进程守护!.

 

标签:name,python,dest,source,file,进程,拷贝,multiprocessing,dir
来源: https://www.cnblogs.com/tongtong77/p/16207082.html