原标题:100122-随机分配源目录下所有文件到目标文件夹下的各一级文件夹内-可指定每个文件夹分配多少个文件【源代码】
导读:
用于将源文件夹及其所有子文件夹中的文件随机分配到目标文件夹的各个一级子文件夹中。该工具会统计源文件夹中的文件数量以及目标文件夹中的一级子文件夹数量,并根据用户指定每个文件夹分配...
用于将源文件夹及其所有子文件夹中的文件随机分配到目标文件夹的各个一级子文件夹中。该工具会统计源文件夹中的文件数量以及目标文件夹中的一级子文件夹数量,并根据用户指定每个文件夹分配的文件数量进行随机分配。若文件数量与文件夹数量不匹配,多余文件会留在源文件夹内。操作完成后,用户可以选择是否继续对其他源文件夹和目标文件夹执行相同操作。
用户使用该工具时,程序首先会打印作者相关信息,包括定制小工具的微信联系方式、定制费用说明、系统支持说明(只支持win64位系统,不支持32位系统)以及操作提示(输入完成后按回车键确认执行下一步)。之后,用户按以下步骤操作:
- 输入源目录路径:在“请输入源目录的路径:”提示后,用户需准确输入包含待分配文件的源文件夹路径,该路径下的所有文件(包括子文件夹中的文件)都将作为分配对象。
- 输入目标目录路径:在“请输入包含有需要分配到的各一级文件夹的总路径:”提示后,用户输入目标文件夹路径,文件将被随机分配到该目标文件夹下的各个一级子文件夹中。
- 执行文件分配操作:
- 统计文件和文件夹数量:程序通过
get_all_files
函数获取源文件夹及其所有子文件夹下的所有文件路径列表,并统计文件总数,在控制台打印“源文件夹 '[源文件夹路径]' 下共有 [文件总数] 个文件。”。同时,通过count_folders
函数统计目标文件夹下的一级子文件夹数量,并在控制台打印“目标文件夹 '[目标文件夹路径]' 下共有 [一级子文件夹数量] 个一级文件夹。”,并提示用户文件和文件夹数量尽量匹配,否则文件不够会出错,文件多了多余的会留在源文件夹内。 - 随机分配文件:程序进入循环,提示用户输入每个文件夹内分配的文件数量。程序会根据源文件夹的文件总数和目标文件夹的一级子文件夹数量,对用户输入的数量进行调整,确保每个文件夹分配的文件数量不超过源文件总数除以目标文件夹数的商。然后,对于目标文件夹下的每个一级子文件夹,从源文件列表中随机抽取指定数量的文件,并将这些文件移动到对应的一级子文件夹中。每次分配完成后,更新源文件列表,去除已分配的文件。
- 输出剩余文件信息:当所有一级子文件夹都分配完文件后,若源文件列表中还有剩余文件,程序会在控制台打印“剩余 [剩余文件数量] 个文件未分配,保留在源文件夹内。”。
- 统计文件和文件夹数量:程序通过
- 询问是否继续:完成一次文件分配操作后,程序询问“是否要继续运行程序,就是不关闭程序重复运行以上步骤?(y/n): ”。若用户输入“y”(不区分大小写),则会重新提示用户输入每个文件夹分配的文件数量,开始新一轮的文件分配操作;若输入其他内容,程序结束运行,并在控制台打印“文件随机分配完成!”。
例如,假设存在如下文件夹结构:
源文件夹
│
├── 文件夹 A
│ ├── file1.txt
│ ├── file2.jpg
│ └── subfolder1
│ ├── file3.png
│ └── file4.docx
├── 文件夹 B
│ └── file5.txt
└── file6.jpg
目标文件夹
│
├── 子文件夹 1
├── 子文件夹 2
└── 子文件夹 3
用户运行程序,输入“源文件夹”作为源目录路径,“目标文件夹”作为目标目录路径。程序统计出源文件夹有6个文件,目标文件夹有3个一级子文件夹。用户输入每个文件夹分配2个文件,程序会从源文件夹的6个文件中随机抽取2个文件移动到“子文件夹1”,再随机抽取2个文件移动到“子文件夹2”,最后抽取2个文件移动到“子文件夹3”。操作完成后输出剩余文件信息,并询问用户是否继续运行程序。若选择“y”,可重新输入每个文件夹分配的文件数量进行新一轮操作;若选择其他内容,程序结束。
python版本:3.86
是否带UI界面:非UI版本
电脑系统版本:win10 64位 专业版系统(这是测试环境,其他环境也可以32位操作系统可能需要调整代码,让AI去转换即可)
脚本使用到的库:使用pycharm编辑器,如果没有安装相关库,会自动标红提示,鼠标放到标红的地方会弹出安装库按钮
重要提示:这是源代码,需要安装python使用,也可以自行修改部分代码实现想要的功能
查看源代码
- 随机文章
- 热门文章
- 706-批量将指定文件夹下所有文件格式后缀改为小写-UI
- 708-读取txt搜索指定文件夹下文件并移动到目标文件夹
- 752-批量复制文件及文件夹到多个文件夹
- 757-读取txt每行文件名移动指定文件到指定文件夹
- 763-批量删除整理多层文件夹冗余
- 772-批量删除文件名中某个字符前的所有内容(可选删除字符本身)
- 773-批量为文件名添加前缀或后缀
- 776-批量删除指定文件夹下所有文件名中指定的关键词
- 780-批量获取文件及文件夹信息导出到excell
- 10080-2-监测指定文件夹-对zip-rar-7z所有压缩包创建同名文件夹移入并解压-支持子孙文件夹下压缩包解压-支持多层嵌套压缩包的解压-支持密码库解压
- 1开通VIP会员享全站内容免费查看
- 2🔥🔥🔥承接各种批处理工具定制 / 售后相关信息 / 任何需求请在该文章下留言
- 3752-批量复制文件及文件夹到多个文件夹
- 410081-1-批量解压自解压文件-【支持密码-子文件穿透】【不支持嵌套自解压或压缩包解压】-除自解压文件外不能有其他exe文件
- 5790-批量统计各文件夹下文件类型数量及文件夹路径输出到excell
- 6网页插入bilibili哔哩哔哩视频
- 7401-批量识别pdf中二维码并替换为指定图片或覆盖白色
- 8431-批量合并指定文件夹下各文件夹内pdf为一个pdf文件
- 9Adobe程序完全卸载教程完全卸载无残留-【包括单个程序卸载和全部程序卸载】(win系统版本)
- 10为ps脚本添加快捷键快速调用
还没有评论,来说两句吧...