本帖最后由 廿一 于 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)
|