使用python os模块复制文件到指定文件夹的方法

yipeiwu_com5年前Python基础

复制一个文件夹的文件到指定目录下

import os
import shutil
import time

start_time = time.time()
# 需要被复制的文件夹

old_path = r'D:\zjf_workspace\001-地标、利器、服饰\004文本\json1'
new_path = r'D:\zjf_workspace\001-地标、利器、服饰\004文本\json'
all_list = os.listdir(old_path)
for i in all_list:
 print(i)
 name, suffix = i.rsplit('.json')
 name = name.replace('.','')
 old_name = old_path + '\\' + i
 new_name = new_path + '\\' + name + ".json"
 shutil.copyfile(old_name, new_name)

print(len(all_list))
print(all_list)
end_time = time.time()
print(end_time-start_time,'秒')

优化速度:

import gevent
from gevent import monkey

monkey.patch_all()
import os
import shutil
import time


def copy_file(i):
 global num
 num += 1
 print(i,num)
 old_path = r'D:\zjf_workspace\001-地标、利器、服饰\004文本\baidu_isbn5\新建文件夹\txt'
 new_path = r'D:\zjf_workspace\001-地标、利器、服饰\004文本\百度isbn-json-非selenium5'
 name, suffix = i.split('.json')
 name = name.replace('.', '')
 old_name = old_path + '\\' + i
 new_name = new_path + '\\' + name + ".json"
 shutil.copyfile(old_name, new_name)


if __name__ == '__main__':

 start_time = time.time()

 # 需要被复制的文件夹
 old_path = r'D:\zjf_workspace\001-地标、利器、服饰\004文本\baidu_isbn5\新建文件夹\txt'
 all_list = os.listdir(old_path)
 gevent_list = []
 num = 1
 key_num = 0
 for i in all_list:
  key_num += 1
  if key_num >= 1500:
   gevent.joinall(gevent_list)
   gevent.killall(gevent_list)
   gevent_list = []
   key_num = 0
  gevent_list.append(gevent.spawn(copy_file, i))
  # print(i)

 print(len(all_list))
 # print(all_list)
 gevent.joinall(gevent_list)
 end_time = time.time()
 print(end_time - start_time, '秒')

以上这篇使用python os模块复制文件到指定文件夹的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

浅谈Python黑帽子取代netcat

浅谈Python黑帽子取代netcat

按照各位大佬的博客来,端口连接的命令始终连接不上。 后来问了同学,在开了监听之后: 使用书上的代码连接不能成功,连接的命令改成:nc www.baidu.com 80(同理 监听本地就...

Django上使用数据可视化利器Bokeh解析

Django上使用数据可视化利器Bokeh解析

前言 最近在实验室做的一个项目中,需要把大量的数据在 web 端进行可视化,需要绘制各类图表。数据都是以 csv 文件的形式保存在服务器中。本来是想使用 D3.js 这个数据可视化前端库...

详解用Python练习画个美队盾牌

详解用Python练习画个美队盾牌

0 环境 Python版本:3.6.6 操作系统:Mac OS Mojave 10.14.2 1 引言 最近我媳妇每天晚上吃饭时候也拿手机看,上厕所也在看。 看着看着还会笑?WTF?你...

以一个投票程序的实例来讲解Python的Django框架使用

(一)关于Django     Django是一个基于MVC构造的框架。但是在Django中,控制器接受用户输入的部分由框架自行处理,所以 Django 里...

Python生成器(Generator)详解

通过列表生成式,我们可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后...