python实现指定文件夹下的指定文件移动到指定位置
作者:lancefate 发布时间:2023-07-03 08:21:11
标签:python,文件移动
本文主要是写了一个将指定文件夹下的指定文件类型移动到指定位置,具体内容如下
# coding:utf-8
import os
import shutil
import sys
reload(sys)
sys.setdefaultencoding('utf8')
# print os.getcwd()
# 有些文件夹下面有很多文件夹,每个文件夹下面有很多视频文件,现在通过脚本,将文件夹下面的所有文件转移到一个目录下面
# 统计访问的文件夹数量及文件数量
countNum = [0, ]
countFile = [0, ]
# 选择全部移除或者指定后缀名文件
# 查找文件
def move_all_files(dir_path):
if os.path.exists(dir_path):
countNum[0] += 1
# 输出遍历的文件夹数量
print "*****", countNum[0], "*****"+dir_path
# 指定文件夹下的所有文件和文件夹
path_list = os.listdir(dir_path)
# 遍历
for each_path in path_list:
# 如果是文件夹就继续遍历
print each_path
if os.path.isdir(dir_path+"\\"+each_path):
# 移动所有文件到指定目录下面
src=dir_path+"\\"+each_path
move_all_files(src)
else:
# 如果是指定文件类型,则复制文件
file_type = os.path.splitext(each_path)[1]
# 判断是否为选择的文件类型
selected = False
if file_type == select_type or select_type == 'All':
selected = True
if selected:
# 复制文件
src_file = dir_path + "\\" + each_path
des_file = des_pos + "\\" + each_path
print "正在复制", each_path
shutil.copyfile(src_file, des_file)
# 文件+1
countFile[0] += 1
else:
print "指定路径不存在"
# 需要复制文件的文件夹位置
give_pos = r"C:\Users\lance\Downloads\Java Web编程相关"
# 需要复制到的位置
des_pos = r"C:\Users\lance\Downloads\测试"
# All 或者 指定文件后缀名
select_type = 'All'
# 如果不存在,创建
if not os.path.exists(unicode(des_pos, 'utf-8')):
os.mkdir(unicode(des_pos, "utf-8"))
# 移动文件
move_all_files(unicode(give_pos, "utf-8"))
print "将文件从****'", give_pos, "'复制到****'", des_pos, "'"
print "共访问了", countNum[0], "个文件夹"
print "共复制了 ", countFile[0], " 个文件"
来源:https://blog.csdn.net/FEUIFERISFDF/article/details/79382820


猜你喜欢
- 学一门新技术或者新语言,我们都要首先学会如何去适应这们新技术,其中在适应过程中,我们必须得学习如何调试程序并打出相应的log信息来,正所谓“
- 本文介绍如何建立基于Web的日历,同时为不熟悉Active Server Pages(ASP)、SQL和ADO的开发者提供建立Web站点的过
- 还是先上代码吧 ,可以先看 SQL语句去掉重复记录,获取重复记录ALTER procedure [dbo].[PROC_ITEMMASTER
- 长话短说,看这个 form 元素:<form method="post" action=&qu
- 我们可用如下代码进行监控:函数中使用了fso对象来读取文件属性。Function File_GetLastModifi
- 日常在网站使用过程中经常遇到图形验证,今天准备自己做个图形验证码,这算是个简单的功能,也适合新手练习的,便于自己学习。 主要用到的库--PI
- div的内容为:<div style="background-color: rgb(255, 238, 221);"
- 今天遇到一个问题,在通过php的mssql函数读取sql server数据导入mysql数据库时,sql server 的datetime类
- Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM Select
- 一、集合在 python 中用 {} 扩起一堆数字,但是这堆数字没有体现映射关系,那么这堆数字就是一个集合。集合的特色:集合在 python
- 被分割的字段一定是有限而且数量较少的,我们不可能在一个字符串中存储无限多个字符 这个字段所属的表与这个字段关联的表,一定是一对多的关系 比如
- k8s容器互联-flannel host-gw原理篇容器系列文章容器系列视频简析host-gw前面分析了flannel vxlan模式进行容
- 前言ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在2015年6月正式发布了。它的目标,是
- 外联接。外联接可以是左向外联接、右向外联接或完整外部联接。 在 FROM 子句中指定外联接时,可以由下列几组关键字中的一组指定:LEFT J
- 使用mysql二进制方式连接您可以使用MySQL二进制方式进入到mysql命令提示符下来连接MySQL数据库。实例以下是从命令行中连接mys
- 字面意思上的区别Attribute与property, 都可翻译成属性. 虽然无论是在中文中还是英文中 它们的意思都几乎一样, 但仍有些许差
- 本文实例讲述了Python Web框架之Django框架Form组件用法。分享给大家供大家参考,具体如下:Form简介在HTTP中,表单(f
- 而Easp类中提供了大量实用的ASP通用过程及方法,可以简化大部分的ASP操作。目前只提供了VBScript版,JScript版将来可能会提
- 本文较为详细的分析了python内存管理机制。分享给大家供大家参考。具体分析如下:内存管理,对于Python这样的动态语言,是至关重要的一部
- 第1步:安装cross-envnpm i --save-dev cross-env 第2步:修改各环境下的参数在config/目录下添加te