python 将指定文件夹中的指定文件放入指定文件夹中
import os
import shutil
import re
#获取指定文件中文件名
def get_filename(filetype):
name =[]
final_name_list = []
source_dir=os.getcwd()#读取当前路径
for root,dirs,files in os.walk(source_dir):
for i in files:
if filetype in i:
name.append(i.replace(filetype,''))
final_name_list = [item +filetype for item in name]
return final_name_list #返回由文件名组成的列表
#筛选文件,利用正则表达式
def select_file(str_cond,file_name_list):
select_name_list =[]
part1 = re.compile(str_cond)#正则表达式筛选条件
for file_name in file_name_list:
if len(part1.findall(file_name)):#判断其中一个文件名是否满足正则表达式的筛选条件
select_name_list.append(file_name)#满足,则加入列表
return select_name_list#返回由满足条件的文件名组成的列表
#复制指定文件到另一个文件夹里,并删除原文件夹中的文件
def cope_file(select_file_name_list,old_path,new_path):
for file_name in select_file_name_list:
shutil.copyfile(os.path.join(old_path,file_name),os.path.join(new_path,file_name))#路径拼接要用os.path.join,复制指定文件到另一个文件夹里
os.remove(os.path.join(old_path,file_name))#删除原文件夹中的指定文件文件
return select_file_name_list
#主函数
def main_function(filetype,str_cond,old_path,new_path):
final_name_list = get_filename(filetype)
select_file_name_list = select_file(str_cond,final_name_list)
cope_file(select_file_name_list,old_path,new_path)
return select_file_name_list file_type = '.csv'#指定文件类型
str_cond = '-Dfn_info-'#正则条件
old_path = 'F:\\data\\text_1'#原文件夹路径
new_path = 'F:\\data\\dfn_info'#新文件夹路径
main_function(file_type,str_cond,old_path,new_path)#主函数
python 将指定文件夹中的指定文件放入指定文件夹中的更多相关文章
- django中多个app放入同一文件夹apps
开发IDE:pycharm 新建一个apps文件夹 需要整理的app文件夹拖到同一个文件夹中,即apps.(弹出对话框,取消勾选Search for references) 在pycharm 中,右键 ...
- django中多个app放入同一文件apps
新建一个apps文件夹 需要整理的app文件夹拖到同一个文件夹中,即apps.(弹出对话框,取消勾选Search for references) 在pycharm中,右键apps文件夹--选择mark ...
- 键盘录入一个文件夹路径,统计该文件夹(包含子文件夹)中每种类型的文件及个数,注意:用文件类型(后缀名,不包含.(点),如:"java","txt")作为key, 用个数作为value,放入到map集合中,遍历map集合
package cn.it.zuoye5; import java.io.File;import java.util.HashMap;import java.util.Iterator;import ...
- JS对象 指定分隔符连接数组元素join() join()方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。
指定分隔符连接数组元素join() join()方法用于把数组中的所有元素放入一个字符串.元素是通过指定的分隔符进行分隔的. 语法: arrayObject.join(分隔符) 参数说明: 注意:返回 ...
- 【C#操作Excel】同名Excel放入同一文件夹中,然后合并为同一个Excel文件
近期有对Excel操作的需求,由于都是重复劳动,故分享代码如下,本人也是技术菜鸟没有考虑性能,如果有大牛能够指教就再好不过了 事先电脑中需要安装Excel,然后Vs中引用Microsoft.Offic ...
- NX二次开发-UFUN将实体放入STL文件中函数UF_STD_put_solid_in_stl_file
NX9+VS2012 #include <uf.h> #include <uf_obj.h> #include <uf_modl.h> #include <u ...
- WPF Prism MVVM 中 弹出新窗体. 放入用户控件
原文:WPF Prism MVVM 中 弹出新窗体. 放入用户控件 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/qq_37214567/artic ...
- JavaScript 将多个引用(样式或者脚本)放入一个文件进行引用
1.将样式放入一个文件进行引用 @import url("../media/css/bootstrap.min.css"); @import url("../media/ ...
- bootstrap中模态框如果放入form表单中会存在的问题
bootstrap中模态框如果放入form表单中会存在的问题:当模态框显示时,点回车会出现表单自动提交!!!所以在使用模态框的时候要特别注意!
随机推荐
- mysql8.0 Mac下的安装
一.下载及安装 首先去官网下载mac对应版本的Mysql,尾缀为.dmg的程序包 下载地址:https://dev.mysql.com/downloads/mysql/ 二.启动 在 Setting ...
- Idea创建Scala的Maven项目
Idea版本(2018.1.5) Scala版本(2.11.0) Java版本(1.8.0_151) 创建Scala的Maven项目 Idea新建项目如图,输入GroupId和ArtifactId之后 ...
- postman发送json数据
原文链接:https://blog.csdn.net/weixin_33387378/article/details/90721599 1.设置header Content-Type appli ...
- loadrunner安装负载机
1,安装docker 2,下载最新版本的load_generator镜像,命令如下: docker pull hpsoftware/load_generator 3,load_generator镜像实 ...
- cb19a_c++_只适合string类型的操作_提取_追加_替换
*cb19a_c++_只适合string类型的操作_提取_追加_替换三个substr重载函数-获取一个字符串的一部分六个append重载函数-追加字符十个replace重载函数-替换更换 重载函数越多 ...
- ca33a_demo_c++_新旧代码的兼容char数组与vector_string相互转换
/*ca33a_demo_c++33_CppPrimer_新旧代码的兼容_txwtech旧代码:数组和c风格字符串新代码:vector和string相互转换:c风格字符串<- ->stri ...
- 基于NACOS和JAVA反射机制动态更新JAVA静态常量非@Value注解
1.前言 项目中都会使用常量类文件, 这些值如果需要变动需要重新提交代码,或者基于@Value注解实现动态刷新, 如果常量太多也是很麻烦; 那么 能不能有更加简便的实现方式呢? 本文讲述的方式是, 一 ...
- Oracle 导入数据库dmp文件
场景:windows2008 R2系统 ,往新安装的oracle11g数据库导入同事给的dmp文件到指定的新建的用户. 1.创建表空间 在导入dmp文件之前,先打开查看dmp文件的表空间名称(tabl ...
- DOM-BOM-EVENT(6)
6.BOM 6.1.什么是BOM? BOM(Browse Object Model),浏览器对象模型,没有相关标准,是约定俗成的东西,定义了一些操作浏览器的方法和属性,大部分方法都是通过window对 ...
- 【树形dp】Bzoj 1040骑士
Description Z国的骑士团是一个很有势力的组织,帮会中汇聚了来自各地的精英.他们劫富济贫,惩恶扬善,受到社会各界的赞扬.最近发生了一件可怕的事情,邪恶的Y国发动了一场针对Z国的侵略战争.战火 ...