吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1910|回复: 18
收起左侧

[Python 原创] 给文件添加时间、姓名等后缀

[复制链接]
廿一 发表于 2023-2-21 14:16
本帖最后由 廿一 于 2023-2-21 14:17 编辑

因为最近需要重复的多次提交修改后的文件,写了一个小工具,如下:
[Python] 纯文本查看 复制代码
import datetime
import os


def main(filename_pre, fileauthor, filetype_pre):
    # print(filetype_pre)
    path = r'./'  # 路径为当前文件夹
    filelist = os.listdir(path)  # 该文件夹下所有的文件(包括文件夹)
    for files in filelist:  # 遍历所有文件
        Olddir = os.path.join(path, files)  # 还是原来的文件路径
        if os.path.isdir(Olddir):
            continue  # 如果是文件夹则跳过
        else:  # 反之,则继续
            # print(Olddir)
            filenamepre = str(Olddir)  # 转化为字符串
            filenamepre = filenamepre.replace("[", "").replace("]", "").replace("'", "").replace(",", "\n").replace(" ","").replace( "./", "")  # replace替换"["、"]"、" "、"'" "./"
            firstname = os.path.splitext(filenamepre)[-2]  # 文件名
            lastname = os.path.splitext(filenamepre)[-1]  # 文件后缀
            if filename_pre == '':
                filename = str(str(firstname).split('_')[0])  # 依据“_”对文件名拆分获取文件名
            else:
                filename = filename_pre
            # print(str(filename))
            # print(firstname)
            # print(lastname)
            a = datetime.date.today().year
            b = datetime.date.today().month
            c = datetime.date.today().day
            d = datetime.datetime.now().hour
            e = datetime.datetime.now().minute
            # 获取时间
            if b < 10:
                b = '0' + str(b)
            if c < 10:
                c = '0' + str(c)
            if d < 10:
                d = '0' + str(d)
            if e < 10:
                e = '0' + str(e)
            # 如果不为10则前面加0
            filetime = str(a) + str(b) + str(c) + str(d) + str(e)

            if fileauthor == '':  # 作者名
                authorname = 'admin' # 默认为admin
            else:
                authorname = fileauthor # 填写的姓名后缀
            if filetype_pre == '':
                filetype_pre = '.doc'  # 默认文件扩展名为docx
            else:
                filetype_pre = filetype_pre  # 自定义目标文件扩展名
            # print(filetype_pre)
            if lastname == filetype_pre:  # 判断文件扩展名
                filetype = filetype_pre
                Newdir = os.path.join(path, filename + "_" + filetime + "_" + authorname + filetype)  # 新的文件路径
                os.rename(Olddir, Newdir)  # 完成重命名


if __name__ == '__main__':
    print('-----------------|***提示***|----------------')
    print('-----------------|输入文件名称|----------------')
    print('-----------------|例如:xxxxx|----------------')
    filename_pre = input('请输入文件名称,不填则默认为原文件名:') # 如需更改文件名则填写
    print('-----------------|***提示***|----------------')
    print('-----------------|输入作者姓名|----------------')
    print('-----------------|例如:admin|----------------')
    fileauthor = input('请输入作者名称,不填则默认为"admin":') # 姓名后缀
    print('-----------------|***提****示***|----------------')
    print('-----------------|输入格式:.xxxx|----------------')
    print('-----------------|例   如:.doc|----------------')
    filetype_pre = input('请输入文件后缀,不填则默认为".doc":')  # 自定义文件后缀名

    main(filename_pre, fileauthor, filetype_pre)


免费评分

参与人数 4吾爱币 +4 热心值 +3 收起 理由
lingyiling + 1 + 1 我很赞同!
nanhai31 + 1 + 1 谢谢@Thanks!
Bob5230 + 1 热心回复!
wanfon + 1 + 1 热心回复!

查看全部评分

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

 楼主| 廿一 发表于 2023-2-24 23:13
看到有同学问到怎么用,我就说一下我是怎么用的吧
因为不是很复杂的功能,我就建了一个空文件夹,在里面写了一个批处理文件(xxx.bat),内容如下:

os_name.bat

os_name.bat


平常用的时候直接点一下这个批处理文件就可以了
xiaoshan1818 发表于 2023-2-21 20:34
这样怎么使用呀,不会啊,代码复制下?然后呢?求指导
XiaoZouYu 发表于 2023-2-21 17:22
dujiu3611 发表于 2023-2-21 18:14
小本本加一,感谢分享
ytlk0535 发表于 2023-2-21 18:53
感谢分享,学习一下
lgslegend 发表于 2023-2-21 18:58
&#128077;
封神之剑 发表于 2023-2-21 19:01
留给需要的人
cn2jp 发表于 2023-2-21 19:38
我是一个连成品都用不好的人
nanhai31 发表于 2023-2-21 20:29
谢谢分享
hkhbs 发表于 2023-2-21 21:55
能帮忙编译下吗
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-25 01:50

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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