python多线程实现文件夹拷贝


import threading
import os
import shutil


# 创建拷贝任务
def copy_work(source_dir, dest_dir, file_name):
# 拼接文件名路径
source_file_path = source_dir + '/' + file_name
dest_file_path = dest_dir + '/' + file_name
# 打开目标文件
with open(dest_file_path, 'wb') as dest_file:
# 打开源文件
with open(source_file_path, 'rb') as source_file:
# 写入数据
while True:
source_file_data = source_file.read(1024)
if source_file_data:
dest_file.write(source_file_data)
else:
break


if __name__ == '__main__':
# 指定源目录和目标目录
source_dir = input("输入源目录:")
dest_dir = input("输入目标目录")
if os.path.exists(source_dir):
if os.path.exists(dest_dir):
# shutil.rmtree(dest_dir)
print("目标文件夹已存在,如果目录内存在同名文件,将覆盖")
else:
# 创建目标文件夹
os.mkdir(dest_dir)
# 获取源目录文件列表
source_file_list = os.listdir(source_dir)
print(source_file_list)
for file_name in source_file_list:
copy_thread = threading.Thread(target=copy_work, args=(source_dir, dest_dir, file_name))
copy_thread.start()
else:
print("请确认源目录是否存在或者是否拼写错误")


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM