原标题:10048-1-【多文件夹操作】查找文件名中最后一组数据,相同的以序列小的文件文件名创建文件夹,并将文件移动进去【源代码】
导读:
其核心功能是对指定文件夹下的所有子文件夹内的JPG文件,按文件名中的最后一个数字进行分组。对于同一组内文件数量大于1的情况,会创建以该组中序列号最小的文件名命名的新文件夹,并将...
其核心功能是对指定文件夹下的所有子文件夹内的JPG文件,按文件名中的最后一个数字进行分组。对于同一组内文件数量大于1的情况,会创建以该组中序列号最小的文件名命名的新文件夹,并将组内文件移动到新文件夹中。操作完成后,程序会提示用户且提供是否继续运行程序的选项。
用户使用该工具时,程序首先提示用户输入相关信息。之后,用户按以下步骤操作:
- 输入文件夹路径:在“请输入需要处理的文件夹路径:”提示后,用户要准确输入包含待处理子文件夹的文件夹路径。这个路径下的所有子文件夹都将被处理。
输入完成后,程序开始执行操作:
- 获取子文件夹路径列表:程序通过
os.listdir
结合os.path.isdir
方法,获取指定文件夹下所有子文件夹的路径,并存储在subfolder_paths
列表中。 - 处理每个子文件夹内的JPG文件:遍历
subfolder_paths
列表,针对每个子文件夹路径:- 获取JPG文件列表:在子文件夹内,通过列表推导式从所有文件中筛选出以
.jpg
结尾的文件名,存入jpg_files
列表。 - 按最后数字分组文件名:遍历
jpg_files
列表,对每个JPG文件名,通过字符串操作获取文件名的最后一个数字。依据这个数字,将文件名分组存储在move_files
字典中,若字典已有该数字作为键,则把文件名追加到对应的值列表;若没有,则新建键值对,值为包含该文件名的列表。 - 创建新文件夹并移动文件:遍历
move_files
字典的键值对,如果某个数字对应的文件数量大于1,找到该组中序列号最小的文件名,以这个文件名(去掉最后数字部分)和该数字构建新的文件夹路径。使用os.makedirs
创建新文件夹(若文件夹已存在则不报错),并在控制台打印“创建文件夹 [新文件夹路径]”。然后将该组内所有文件移动到新文件夹,每次移动后在控制台打印“移动文件 [文件名] 到文件夹 [新文件夹路径]”。
- 获取JPG文件列表:在子文件夹内,通过列表推导式从所有文件中筛选出以
- 操作结果反馈:当所有子文件夹内符合条件的文件都移动完成后,程序在控制台输出“文件整理移动完成,请前往相关文件夹查看!”。
完成一次操作后,程序询问“是否继续运行程序,退出直接关闭即可?(是/否)”。若用户输入“是”或“y”(不区分大小写),会重新提示用户输入文件夹路径,开启新一轮操作;若输入其他内容,程序结束运行。
例如,假设存在如下文件夹结构:
主文件夹
│
├── 子文件夹 A
│ ├── file1 - 1.jpg
│ ├── file2 - 2.jpg
│ ├── file3 - 1.jpg
│
├── 子文件夹 B
│ ├── file4 - 3.jpg
│ ├── file5 - 3.jpg
用户运行程序,输入“主文件夹”作为需要处理的文件夹路径。程序会对“子文件夹A”和“子文件夹B”进行处理。在“子文件夹A”中,发现数字“1”对应两个文件 file1 - 1.jpg
和 file3 - 1.jpg
,会创建以 file1 - 1
命名的新文件夹,并将这两个文件移动进去。在“子文件夹B”中,数字“3”对应两个文件 file4 - 3.jpg
和 file5 - 3.jpg
,会创建以 file4 - 3
命名的新文件夹,并将这两个文件移动进去。操作完成后输出提示信息,并询问用户是否继续运行程序。若选择“是”,可重新输入路径进行新一轮操作;若选择其他内容,程序结束。
python版本:3.86
是否带UI界面:非UI版本
电脑系统版本:win10 64位 专业版系统(这是测试环境,其他环境也可以32位操作系统可能需要调整代码,让AI去转换即可)
脚本使用到的库:使用pycharm编辑器,如果没有安装相关库,会自动标红提示,鼠标放到标红的地方会弹出安装库按钮
重要提示:这是源代码,需要安装python使用,也可以自行修改部分代码实现想要的功能
查看源代码
- 随机文章
- 热门文章
- 752-批量复制文件及文件夹到多个文件夹
- 788-批量创建指定格式的指定数量-指定起始序列的文件夹
- 10082-2-批量解压压缩包-【支持子文件夹穿透-带密码的压缩包】【不支持多层嵌套压缩包】
- 10046-2-批量为视频左上角添加图片水印可设置水印透明度
- 601-批量对指定文件夹下各子文件夹下docx格式word文档进行合并
- 303-批量分割切图可指定横竖各切多少或不切-删除原图-转jpg
- 304-批量裁切缩放图片
- 10042-从众多图片中找到包含人像的图片移动到指定文件夹
- 10086-一键批量将webp-png-jpeg-bmp-gif-ico格式图片格式转为jpg-包含子孙文件夹下-提示是否删除原文件
- 10089-0-合并各个文件夹内所有图片为gif-存储在各文件夹内以文件夹名命名-自定义速度-可选自定统一尺寸
- 1开通VIP会员享全站内容免费查看
- 2🔥🔥🔥承接各种批处理工具定制 / 售后相关信息 / 任何需求请在该文章下留言
- 3752-批量复制文件及文件夹到多个文件夹
- 410081-1-批量解压自解压文件-【支持密码-子文件穿透】【不支持嵌套自解压或压缩包解压】-除自解压文件外不能有其他exe文件
- 5790-批量统计各文件夹下文件类型数量及文件夹路径输出到excell
- 6网页插入bilibili哔哩哔哩视频
- 7401-批量识别pdf中二维码并替换为指定图片或覆盖白色
- 8431-批量合并指定文件夹下各文件夹内pdf为一个pdf文件
- 9Adobe程序完全卸载教程完全卸载无残留-【包括单个程序卸载和全部程序卸载】(win系统版本)
- 10为ps脚本添加快捷键快速调用
还没有评论,来说两句吧...