进程 7.多进程实现文件夹copy
2021/12/15 7:16:58
本文主要是介绍进程 7.多进程实现文件夹copy,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
多进程实现文件夹copy
文件位置:G:/PyCharmProject/zero/13.多任务 - 进程/test copy位置:C:/Users/lenovo/Desktop/test 步骤: 1.定义变量接收源文件夹路径和目标文件夹路径 2.在目标路径创建文件夹 3.获取源文件夹中的文件列表 4.根据文件列表得到所有文件名 5.定义copy文件的函数 copy文件的函数: 参数:源文件路径,目标文件路径,文件名 1.拼接源文件和目标文件的完整路径 2.打开源文件和目标文件 3.循环执行读写操作
import os import multiprocessing def copy_work(source_dir,dest_dir,file_name): process = multiprocessing.current_process() print(f'进程 {process} 正在执行copy') source_path = source_dir + '/' + file_name dest_path = dest_dir + '/' + file_name with open(source_path,'rb') as source_file: with open(dest_path,'wb') as dest_file: while True: source_text = source_file.read(1024) if not source_text: break dest_file.write(source_text) print(f'已copy:{file_name}') if __name__ == '__main__': # 定义变量接收源文件夹路径和目标文件夹路径 source_dir = './test' dest_dir = 'C:/Users/lenovo/Desktop/test' # 在目标路径创建文件夹 try: os.mkdir(dest_dir) print('文件夹已创建') except: print('文件夹已存在') # 获取源文件夹中的文件列表 file_list = os.listdir(source_dir) print(f'源文件列表:{file_list}') # 创建进程池 pool = multiprocessing.Pool(3) # 根据文件列表得到所有文件名 for file_name in file_list: print(f'准备copy:{file_name}') # # 调用copy文件的函数 # copy_work(source_dir,dest_dir,file_name) pool.apply_async(copy_work,(source_dir,dest_dir,file_name)) pool.close() pool.join()
这篇关于进程 7.多进程实现文件夹copy的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-30uniAPP 实现全屏左右滚动滚动的效果-icode9专业技术文章分享
- 2024-06-30如何在本地使用授权或插件-icode9专业技术文章分享
- 2024-06-30伪静态规则配置方法汇总-icode9专业技术文章分享
- 2024-06-29易优CMS安装常见问题汇总-icode9专业技术文章分享
- 2024-06-28易优新手必读安装教程-icode9专业技术文章分享
- 2024-06-28忘记eyoucms后台密码怎么办?-icode9专业技术文章分享
- 2024-06-26终极指南:Scrum中如何设置需求优先级
- 2024-06-26AI大模型企业应用实战(25)-为Langchain Agent添加记忆功能
- 2024-06-26小白家庭 nas 搭建方案-icode9专业技术文章分享
- 2024-06-23AI大模型企业应用实战(14)-langchain的Embedding