【用python将文件夹下面的文件夹里面的文件全部提取出来,并且放到一个新的文件夹】

news2024/11/24 11:35:20

文件里面有多个文件,每个文件下面有很多jpg格式的照片,把所有照片提取出来并且放在一个新的文件夹下面。

可以使用Python的os和shutil库来完成这个任务。
比如说:我的faces95文件夹下面有95个文件,每个文件下面有十七到十八个照片不等。
在这里插入图片描述
在这里插入图片描述
把所有照片提取出来可以用以下python代码:

import os
import shutil

# 设置原始文件夹和目标文件夹
data_folder = 'C:\\Users\\ljx\\Desktop\\Images'
photo_folder = 'C:\\Users\\ljx\\Desktop\\new_images'

# 创建目标文件夹
if not os.path.exists(photo_folder):
    os.makedirs(photo_folder)

# 遍历所有文件夹
for root, dirs, files in os.walk(data_folder):
    for file in files:
        # 如果文件是jpg文件
        if file.endswith('.jpg'):
            # 构造原始文件路径和目标文件路径
            src_path = os.path.join(root, file)
            dst_path = os.path.join(photo_folder, file)
            # 复制文件到目标文件夹
            shutil.copyfile(src_path, dst_path)

需要修改的地方:
在这里插入图片描述
data_folder = ''中的改为自己的需要提取的文件路径
photo_folder = ''中的改为自己的需要放置的文件路径,默认是新建文件,自己新建也可以

# 设置原始文件夹和目标文件夹
data_folder = 'C:\\Users\\ljx\\Desktop\\faces95'
photo_folder = 'C:\\Users\\ljx\\Desktop\\new_images'

在这里插入图片描述
跑出来的结果在指定的文件路径中查看,比如我的在桌面上,就是
在这里插入图片描述
如果文件较大,需要的python运行时间会更长一点,需要耐心等待。
如果你想复制其他类型的文件,你可以更改if file.endswith(‘.jpg’)这一行的条件,就可以了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/417156.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深拷贝和浅拷贝

目录 一.Java的Cloneable和clone()方法 1.Object类中的clone() 2.实现Cloneable接口的类 3.通过clone()生成对象的特点 二.深拷贝和浅拷贝 1.浅拷贝 2.深拷贝 3.实现深拷贝的两种方法 1.一种是递归的进行拷贝 2.Json字符串的方式进行深拷贝 一.Java的Cloneable和clone…

No.037<软考>《(高项)备考大全》【第21章】项目组合管理

【第21章】项目组合管理1 考试相关2 项目组合管理2.1 项目组合管理、项目集管理、项目管理异同2.2 项目组合管理过程组3 练习题参考答案1 考试相关 选择1分必考 案例概率低,知识点看一遍即可 2 项目组合管理 1、项目组合是将项目、项目集,以及其他方面…

2023年MathorCup数学建模赛题浅析

MathorCup俗称妈杯,是除了美赛国赛外参赛人数首屈一指的比赛,而我们的妈杯今天也如期开赛。今年的妈杯难度,至少在我看来应该是2023年截至目前来讲最难的一场比赛。问题的设置、背景的选取等各个方面都吐露着我要难死你们的想法。难度是恒定的…

Servlet、SpringMVC、SpringBoot整合Thymeleaf汇总

介绍 模板引擎,与JSP、JSTL类似。 好处是:直接写在HTML文件中,服务器可以解析,浏览器也可以解析,实现了动静分离,并未破坏html结构,即使无网络、不通过后端渲染也能在浏览器成功打开&#xff…

kettle——数据清洗(数据表-->文本文件)

实验步骤: 1.数据表(图片加分析,创建表的过程和对应的字段及记录) ①选择数据库 ②创建表结构 ③插入数据 2.kettle连接模块(图片加分析,每个模块实现的功能) ①新建“转换”文件,”文件”——>“新建…

JAVA开发运维(Jenkins中踩的坑)

最近尝试通过Jenkins来自动化部署项目,没想到还踩了很多坑。Jenkins部署的基本原理: 通过Jenkins服务器拉取gitlab上的代码进行打包,推送到目标服务器上,并运行启动脚本。 那么Jenkins就要解决三个问题。 1.连接上目标服务器 …

电子行业应如何实施数字工厂管理系统

随着信息技术的快速发展,电子制造企业也正在逐步做好数字化转型,而数字工厂管理系统便是数字化管理中的一个重要系统。数字工厂系统可以帮助电子企业实现生产过程的自动化、智能化和可视化,提高生产效率,降低生产成本,…

2023香港国际创科展开幕,欧科云链受邀参展

4月12日,由香港特区政府、香港贸易发展局主办的首届香港国际创科展(InnoEX)在香港会展中心开幕,欧科云链(01499.HK)作为全球领先的Web3科技企业受邀参展。香港国际创科展现场图 此次创科展上,欧科云链向公众…

【RocketMQ】负载均衡源码分析

RocketMQ在集群模式下,同一个消费组内,一个消息队列同一时间只能分配给组内的某一个消费者,也就是一条消息只能被组内的一个消费者进行消费,为了合理的对消息队列进行分配,于是就有了负载均衡。 接下来以集群模式下的消…

智优ERP的升级版智优E3_ERP,可以自定义列,和自定义打印公司logo

新版的智优E3_ERP系统,新增了许多供自定义的列。 系统能够解决的企业管理问题: 一、日常的出入库管理、收付款管理、往来对账、移动加权平均成本核算、以及相关数据的查询分析; 二、订单的跟单管理(包括销售跟单、采购跟单、生产…

ElasticSearch常用查询操作

ES查询 一般我们使用ES最多的就是查询,今天就讲一下ES的查询。这里我是建了一个person的索引。 "person" : {"aliases" : { },"mappings" : {"properties" : {"address" : {"type" : "text"…

[LeetCode周赛复盘] 第 102 场双周赛20230415

[LeetCode周赛复盘] 第 102 场双周赛20230415 一、本周周赛总结二、 6333. 查询网格图中每一列的宽度1. 题目描述2. 思路分析3. 代码实现三、6334. 一个数组所有前缀的分数1. 题目描述2. 思路分析3. 代码实现四、6335. 二叉树的堂兄弟节点 II1. 题目描述2. 思路分析3. 代码实现…

English Learning - L2 第 15 次小组纠音 助动词弱读和重音节奏 2023.4.15 周六

English Learning - L2 第 15 次小组纠音 助动词弱读和重音节奏 2023.4.15 周六共性问题have has /hv/ /hz/ 弱读成 /həv/ /həz/fine left /faɪn/ /left/late changed train /leɪt/ /ʧeɪnʤd/ /treɪn/ 中的 eɪmoment problem time /ˈməʊmənt/ /ˈprɒbləm/ /taɪm…

4.10~4.11学习总结

ER图的学习: 学习了ER图相关知识,并绘制了项目大概的ER图 详细笔记博客:http://t.csdn.cn/YOJxq MySQL的学习: 函数 学习了字符串函数,数值函数,日期函数,流程函数。 约束 作用于表中字段的规则…

改善Instagram客户服务的6个技巧

Instagram仍然是全球前四大社交网络,按用户数量排名。它通过其创新的过滤器、内容创建工具、视频和卷轴选项继续增长并推动流量。这是一个平台,世界顶级名人和有影响力的人可以为全球用户提供有趣和令人印象深刻的内容。 但不仅仅是一个娱乐平台&#xf…

Nestjs实战干货-概况-异常过滤器-Exception filters

异常过滤器 Nest 带有一个内置的异常层,负责处理应用程序中所有未处理的异常。当应用程序代码未处理异常时,该层会捕获该异常,然后自动发送适当的用户友好响应。 开箱即用,此操作由内置的全局异常过滤器执行,该过滤器…

三、Locust任务(task)详解

当一个负载测试开始时,将为每个模拟用户创建一个用户类的实例,他们将在自己的绿色线程中开始运行。当这些用户运行时,他们会选择执行的任务,睡眠一段时间,然后选择一个新的任务,如此循环。 这些任务是正常…

二、Java 并发编程(4)

本章概要 Java 中的锁 乐观锁悲观锁自旋锁synchronizedReentrantLocksynchronized 与 ReentrantLock 对比SemaphoreAtomicInteger可重入锁公平锁和非公平锁读写锁共享锁和独占锁重量级锁和轻量级锁偏向锁分段锁同步锁和死锁如何进行锁优化 2.6 Java 中的锁 Java 中的锁主要…

【C语言进阶:动态内存管理】C/C++中程序内存区域的划分

⚡C/C中程序内存区域的划分 C/C程序内存分配的几个区域: 栈区(stack):在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结 束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指…

day8 互斥锁/读写锁的概念及使用、死锁的避免

目录 互斥锁的概念和使用 线程通信 - 互斥 互斥锁的创建和销毁 互斥锁的创建 互斥锁的销毁 互斥锁的使用 申请锁 释放锁 互斥锁的概念和使用 线程通信 - 互斥 临界资源: 一次只允许一个任务(进程、线程)访问的共享资源&#xff1b…