用python脚本怎么实现:把一个文件夹里面.png文件没有固定名称,复制到另外一个文件夹按顺序命名?

news2025/4/21 9:11:20

环境:

python3.10

Win10

问题描述:

用python脚本怎么实现:怎么把一个文件夹里面.png文件没有固定名称,复制到另外一个文件夹按顺序命名?

在这里插入图片描述

解决方案:

1.新建一个脚本文件,内容如下:

import os
import shutil
from pathlib import Path

def organize_png_files(source_dir, target_dir, prefix="image_", start_num=1, digits=4):
    """
    将源文件夹中的PNG文件按顺序复制到目标文件夹
    
    参数:
        source_dir: 源文件夹路径
        target_dir: 目标文件夹路径
        prefix: 新文件名前缀(默认为"image_")
        start_num: 起始序号(默认为1)
        digits: 序号位数(默认为4,如0001)
    """
    # 创建目标文件夹(如果不存在)
    Path(target_dir).mkdir(parents=True, exist_ok=True)
    
    # 获取源文件夹中所有PNG文件(按修改时间排序)
    png_files = sorted(
        [f for f in Path(source_dir).glob("*.png") if f.is_file()],
        key=lambda x: x.stat().st_mtime  # 按修改时间排序
    )
    
    # 计数器初始化
    count = start_num
    
    for src_file in png_files:
        # 生成新文件名(自动补零)
        new_name = f"{prefix}{count:0{digits}d}.png"
        dst_file = Path(target_dir) / new_name
        
        # 复制文件
        shutil.copy2(src_file, dst_file)
        print(f"Copied: {src_file.name} -> {new_name}")
        
        # 计数器增加
        count += 1
    
    print(f"\n完成! 共处理了 {len(png_files)} 个文件")
    print(f"目标文件夹: {os.path.abspath(target_dir)}")

if __name__ == "__main__":
    # 配置参数
    SOURCE_FOLDER = r"C:\Users\Administrator\Downloads\1"  # 源文件夹路径
    TARGET_FOLDER = r"C:\Users\Administrator\Pictures\AI图片"  # 新文件夹路径
    
    # 调用函数
    organize_png_files(
        source_dir=SOURCE_FOLDER,
        target_dir=TARGET_FOLDER,
        prefix="D_",      # 文件名前缀(可选)
        start_num=1,        # 起始编号(可选)
        digits=2            # 编号位数(如03)(可选)
    )

2.执行上面脚本

在这里插入图片描述
查看目标文件夹,成功复制
在这里插入图片描述

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

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

相关文章

山东大学软件学院创新项目实训开发日志(20)之中医知识问答自动生成对话标题bug修改

在原代码中存在一个bug:当前对话的标题不是现有对话的用户的第一段的前几个字,而是历史对话的第一段的前几个字。 这是生成标题的逻辑出了错误: 当改成size()-1即可

ZYNQ笔记(十):XADC (PS XDAC 接口)

版本:Vivado2020.2(Vitis) 任务:通过 PS XADC 接口读取XADC测量的芯片温度、供电电压,并通过串口打印出来 目录 一、介绍 二、硬件设计 三、软件设计 四、效果 一、介绍 XADC(Xilinx Analog-to-Digital…

【C++】多态 - 从虚函数到动态绑定的核心原理

📌 个人主页: 孙同学_ 🔧 文章专栏:C 💡 关注我,分享经验,助你少走弯路 文章目录 1. 多态的概念2. 多态的定义及实现2.1 多态的构成条件2.1.1实现多态还有两个必须重要条件:2.1.2 虚…

免费图片软件,可矫正倾斜、调整去底效果

软件介绍 有个超棒的软件要给大家介绍一下哦,它就是——ImgTool,能实现图片漂白去底的功能,而且重点是,它是完全免费使用的呢,功能超强大! 软件特点及使用便捷性 这软件是绿色版本的哟,就像一…

Kubernetes(k8s)学习笔记(二)--k8s 集群安装

1、kubeadm kubeadm 是官方社区推出的一个用于快速部署 kubernetes 集群的工具。这个工具能通过两条指令完成一个 kubernetes 集群的部署&#xff1a; 1.1 创建一个 Master 节点$ kubeadm init 1.2 将一个 Node 节点加入到当前集群中$ kubeadm join <Master 节点的 IP 和…

【论文阅读笔记】模型的相似性

文章目录 The Platonic Representation Hypothesis概述表征收敛的依据表征收敛的原因实验依据未来发展的局限性 Similarity of Neural Network Representations Revisited概述问题背景相似性度量s的性质可逆线性变换不变性正交变换不变性各向同性缩放不变性典型度量满足的性质 …

扣子智能体1:创建Agent与写好提示词

文章目录 Agent是什么使用扣子创建智能体写好提示词生成故事发布Agent 最近学了很久多agent协同、编排工作流等与agent有关的内容&#xff0c;这里用一系列博客&#xff0c;把这些操作都一步一个脚印的记录下来。 这里我们以一个Agent为例&#xff1a;睡前灵异小故事 Agent是…

Spring源码中关于抽象方法且是个空实现这样设计的思考

Spring源码抽象方法且空实现设计思想 在Spring源码中onRefresh()就是一个抽象方法且空实现&#xff0c;而refreshBeanFactory()方法就是一个抽象方法。 那么Spring源码中onRefresh方法定义了一个抽象方法且是个空实现&#xff0c;为什么这样设置&#xff0c;好处是什么。为…

【Bluedroid】蓝牙 HID 设备信息加载与注册机制及配置缓存系统源码解析

本篇解析Android蓝牙子系统加载配对HID设备的核心流程&#xff0c;通过btif_storage_load_bonded_hid_info实现从NVRAM读取设备属性、验证绑定状态、构造描述符并注册到BTA_HH模块。重点剖析基于ConfigCache的三层存储架构&#xff08;全局配置/持久设备/临时设备&#xff09;&…

字节头条golang二面

docker和云服务的区别 首先明确Docker的核心功能是容器化&#xff0c;它通过容器技术将应用程序及其依赖项打包在一起&#xff0c;确保应用在不同环境中能够一致地运行。而云服务则是由第三方提供商通过互联网提供的计算资源&#xff0c;例如计算能力、存储、数据库等。云服务…

数字化工厂五大核心系统(PLM 、ERP、WMS 、DCS、MOM)详解

该文档聚焦数字化工厂的五大核心系统&#xff0c;适合制造业企业管理者、信息化建设负责人、行业研究人员以及对数字化转型感兴趣的人士阅读。 文档先阐述数字化工厂的定义&#xff0c;广义上指企业运用数字技术实现产品全生命周期数字化&#xff0c;提升经营效益&…

n8n 中文系列教程_02. 自动化平台深度解析:核心优势与场景适配指南

在低代码与AI技术深度融合的今天&#xff0c;n8n作为开源自动化平台正成为开发者提效的新利器。本文深度剖析其四大核心技术优势——极简部署、服务集成、AI工作流与混合开发模式&#xff0c;并基于真实场景测试数据&#xff0c;厘清其在C端高并发、多媒体处理等场景的边界。 一…

SQL注入之information_schema表

1 information_schema表介绍&#xff1a; information_schema表是一个MySQL的系统数据库&#xff0c;他里面包含了所有数据库的表名 SQL注入中最常见利用的系统数据库&#xff0c;经常利用系统数据库配合union联合查询来获取数据库相关信息&#xff0c;因为系统数据库中所有信…

Elasticsearch:使用 ES|QL 进行搜索和过滤

本教程展示了 ES|QL 语法的示例。请参考 Query DSL 版本&#xff0c;以获得等效的 Query DSL 语法示例。 这是一个使用 ES|QL 进行全文搜索和语义搜索基础知识的实践介绍。 有关 ES|QL 中所有搜索功能的概述&#xff0c;请参考《使用 ES|QL 进行搜索》。 在这个场景中&#x…

MySQL表与表之间的左连接和内连接

前言: 在上个实习生做的模块之中&#xff0c;在列表接口&#xff0c;涉及到多个表的联表查询的时候总会出现多条不匹配数据的奇怪的bug&#xff0c;我在后期维护的时候发现了&#xff0c;原来是这位实习生对MySQL的左连接和内连接不能正确的区分而导致的这种的情况。 表设置 …

【AI图像创作变现】02工具推荐与差异化对比

引言 市面上的AI绘图工具层出不穷&#xff0c;但每款工具都有自己的“性格”&#xff1a;有的美学惊艳但无法微调&#xff0c;有的自由度极高却需要动手配置&#xff0c;还有的完全零门槛适合小白直接上手。本节将用统一格式拆解五类主流工具&#xff0c;帮助你根据风格、控制…

相控阵列天线:原理、优势和类型

本文要点 相控阵列天线 &#xff08;Phased array antenna&#xff09; 是一种具有电子转向功能的天线阵列&#xff0c;不需要天线进行任何物理移动&#xff0c;即可改变辐射讯号的方向和形状。 这种电子转向要归功于阵列中每个天线的辐射信号之间的相位差。 相控阵列天线的基…

【HD-RK3576-PI】Ubuntu桌面多显、旋转以及更新Logo

硬件&#xff1a;HD-RK3576-PI 软件&#xff1a;Linux6.1Ubuntu22.04 在基于HD-RK3576-PI硬件平台运行Ubuntu 22系统的开发过程中&#xff0c;屏幕方向调整是提升人机交互体验的关键环节。然而&#xff0c;由于涉及uboot引导阶段、内核启动界面、桌面环境显示全流程适配&#x…

树莓派超全系列教程文档--(36)树莓派条件过滤器设置

树莓派条件过滤器设置 条件过滤器[all] 过滤器型号过滤器[none] 过滤器[tryboot] 过滤器[EDID*] 过滤器序列号过滤器GPIO过滤器组合条件过滤器 文章来源&#xff1a; http://raspberry.dns8844.cn/documentation 原文网址 条件过滤器 当将单个 SD 卡&#xff08;或卡图像&am…

jetpack之LiveData的原理解析

前言 在一通研究下&#xff0c;我打算LiveData的解析通过从使用的方法上面切入进行LiveData的工作原理分析&#x1f60b;。感觉这样子更能让大家伙理解明白&#xff0c;LiveData的实现和Lifecycle分不开&#xff0c;并且还得需要知道LiveData的使用会用到什么样的方法。所以&a…