当前位置: 首页 > news >正文

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

环境:

python3.10

Win10

问题描述:

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

在这里插入图片描述

解决方案:

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

import os
import shutil
from pathlib import Pathdef 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_numfor 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 += 1print(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.执行上面脚本

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

影刀5.26.24 python3.7

里面python模块,有点不同:

import os
import shutil
from pathlib import Pathdef 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_numfor 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 += 1print(f"\n完成! 共处理了 {len(png_files)} 个文件")print(f"目标文件夹: {os.path.abspath(target_dir)}")# 新增符合影刀规范的main函数
def main(args):# 配置参数(建议从系统参数获取,此处保持原有配置)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)if __name__ == "__main__":main()  # 通过main()函数启动

相关文章:

  • 基于Django的AI客服租车分析系统
  • Linux 常用命令 -pkill【通过进程名或其他属性来发送信号给一个或多个进程】
  • 2025.4.14-2025.4.20学习周报
  • 宝塔面板部署 Dify-latest 最新版本
  • QML 字符串格式化
  • Matplotlib的应用
  • Matlab FCM模糊聚类
  • SmolVLM2: The Smollest Video Model Ever(五)
  • 2020 年 7 月大学英语四级考试真题(组合卷)——解析版
  • String +memset字符串类题型【C++】
  • c语言修炼秘籍 - - 禁(进)忌(阶)秘(技)术(巧)【第六式】文件操作
  • 聚宽策略----国九条后中小板微盘小改,年化135.40%
  • HttpClient
  • Vue3集成Element Plus完整指南:从安装到主题定制上
  • 【深度学习入门_NLP自然语言处理】序章
  • C++初阶-类和对象(中)
  • Scratch——第18课 列表接龙问题
  • deep-share开源浏览器扩展,用于分享 DeepSeek 对话,使用户能够将对话内容保存为图片或文本以便轻松分享
  • 2025第十六届蓝桥杯python B组满分题解(详细)
  • chmod,chown命令
  • 习近平向加蓬当选总统恩圭马致贺电
  • 美国防部查信息外泄,防长四名亲信被解职
  • 日本乒乓名将丹羽孝希因赌博被禁赛6个月,曾获奥运男团银牌
  • 从6家试点扩展至全行业,券商并表监管有何看点?
  • 稳健开局!今年粮食产量瞄准1.4万亿斤
  • 正义网评“一男两女举办婚礼”:“一夫多妻”流量闹剧该歇了