第六节 多进程拷贝文件
时间:2020-03-26
本文章向大家介绍第六节 多进程拷贝文件,主要包括第六节 多进程拷贝文件使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1 import os 2 import multiprocessing 3 import os 4 import time 5 6 def copy_file(old_file, new_file, q): 7 """拷贝数据""" 8 old_f = open(old_file, 'rb') 9 old_content = old_f.read() 10 old_f.close() 11 # 打开新文件开始拷贝 12 # print(os.listdir(new_file)) 13 new_filex = open(new_file, 'wb') 14 new_filex.write(old_content) 15 new_filex.close() 16 q.put(1) 17 time.sleep(1) 18 19 def main(): 20 # 1、获取文件夹内每个文件名 21 old_path = r'G:\test' 22 old_filename = os.listdir(old_path) 23 # print(old_filename) 24 # 2、创建一个新的文件夹用于存储拷贝的文件 25 new_path = r'G:\\' 26 new_filename = 'testcopy' 27 new_filename_path = os.path.join(new_path, new_filename) 28 os.mkdir(new_filename_path) 29 # 3、拷贝函数 30 # copy_file(old_filename, old_path, new_filename) 31 # 4、创建进程池 32 po = multiprocessing.Pool(3) 33 q = multiprocessing.Manager().Queue() 34 for x in old_filename: 35 old_file = os.path.join(old_path, x) 36 new_file = os.path.join(new_filename_path, x) 37 po.apply_async(copy_file, (old_file, new_file, q)) 38 po.close() 39 # po.join() 40 # 6、显示拷贝进度,取消po.join(),通过while循环来阻塞主进程结束 41 while True: 42 num = q.qsize() 43 num_all = len(old_filename) 44 print('\r拷贝进度为:%.02f %%' % (num*100/num_all)) 45 if num ==num_all: 46 break 47 48 if __name__ == '__main__': 49 main()
原文地址:https://www.cnblogs.com/kogmaw/p/12575482.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 基于react的组件库主题设计方案
- Xilinx MPSoC PS/PL之间的数据交互和外设设计
- 基于Res-Unet网络实现肝脏肿瘤分割任务
- golang判断map中key是否存在的方法
- 迁移实战:一次AntDB(基于pgxl分布式架构的数据库)数据库迁移经验分享
- 看完这篇文章,99%的人都会使用Mysql Explain工具
- 浅析MySQL存储引擎序列属性
- 详述MySQL Using intersect交集算法
- 案例:强制开库遭遇ORA-16433的处理过程
- 叮~AutoML自动化机器学习入门指南,来了
- 注意:ORACLE 11G ADG RAC 这个情况下并不能高可用
- Nginx转发指向数据库端口并对外开放访问权限
- Python手写了 35 种可解释的特征工程方法
- Geant4--G4ParticleGun定义射线源的发射能谱
- Sony-PMCA-RE, 反向工程索尼PlayMemories相机应用