吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1829|回复: 6
收起左侧

[Python 原创] 照片分类子系统无界面(手机照片分类到文件夹)

[复制链接]
Eks6666 发表于 2023-8-20 22:55
[Python] 纯文本查看 复制代码
import os
import re
import os.path as osp
import shutil
reg=re.compile(r'.*(.jpg)$')#以jpg结尾匹配照片
path = input("请输入要分类文件夹路径:")
# 1、获取照片路径列表
def file_path():
    """
    获取当前工作路径下所有照片绝对路径,并存放在一个列表内
    """
    file_path = []  # 照片文件路径列表
    filenames=os.listdir(path)#后面需要在某单个文件夹内创建文件夹
    list_j = [osp.join(path, x) for x in filenames if osp.isfile(osp.join(path, x))
                  if reg.findall(x)]  # 获取图片的文件名,并拼接完整路径
    for s in list_j:
        if s:  # 非空
            file_path.append(s)

    file_path.sort(key=lambda x: osp.basename(osp.splitext(x)[0])[8:19], reverse=False)  # 以照片的文件名顺序排序(年月日时分秒 )

    return file_path

def fenlei():
    while True:
        summ = 0
        dic = {}
        lit = []
        resm=len(file_path())
        name=input("请输入要创建的文件夹名称:")
        if not name:
            break
        else:
            num=int(input("请输入照片数量:"))
            summ+=num#分配照片数量
            resm-=num#剩余照片数量
            if not num:
                break
            else:
                print(f'此文件夹共分配{summ}张照片', f"{f'还剩{resm}张照片待分配':.^30}")
                #dic = {}  # 存放文件夹名和文件夹内文件名的键值对
                for i in range(summ):
                    lit.append(file_path()[i])
                    dic[name]=lit

        new_path=osp.join(path,name)
        if not osp.exists(new_path):
            os.mkdir(new_path)
        for file in lit:
            shutil.move(file,new_path)


        print()
        sr = input("是否继续创建文件夹?(y/n): ")
        if sr == "y":  # 继续添加
            continue
        else:
            src = osp.basename(path) + "-已分类"
            dst = osp.join(osp.dirname(path), src)
            os.rename(path, dst)  # 重命名已分类
            print(f"{'照片已全部分好':.^34}")
            break
fenlei()



免费评分

参与人数 3吾爱币 +8 热心值 +2 收起 理由
苏紫方璇 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
panjunhao + 1 我很赞同!
kant101x + 1 鼓励转贴优秀软件安全工具和文档!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

dork 发表于 2023-8-21 08:33
好久就想写一个类似的了
jacky_yahu 发表于 2023-8-21 09:23
lcg2014 发表于 2023-8-21 09:23
以照片的文件名顺序排序(年月日时分秒 )----------具体是什么意思?
 楼主| Eks6666 发表于 2023-8-21 12:03
dork 发表于 2023-8-21 08:33
好久就想写一个类似的了

有现成的你不用写了,铁子
 楼主| Eks6666 发表于 2023-8-21 12:06
jacky_yahu 发表于 2023-8-21 09:23
哎哟,小白表示没看懂

铁子,好好学习,天天向上,fighting!!
yu520 发表于 2023-8-22 09:04
学习一下,感谢分享
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 22:27

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表