您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:Python如何根据照片修改时间重命名并排序详解

51自学网 2021-10-30 22:40:25
  python
这篇教程Python如何根据照片修改时间重命名并排序详解写得很实用,希望能帮到您。

一、Background

当想将照片序列合成延时摄影视频时,可能会发现照片中缺少一张,或者照片序列是跨时间、并不连续的,如图1所示,但PR中只有连续的照片序列才能导入。                                                          

图1  时间不连续序列

二、Method

这时往往需要将照片按照修改时间重命名,下面写了一个很简单的python脚本,理论上来说支持10000张照片以内的照片序列重命名,操作如下:

1.将照片备份(没有undo机制,以免脚本失误无法撤销)

2.将rename.exe文件放入照片文件中,双击即可重命名(不可更改名字)。如果安装过python,也可以直接双击脚本文件。

图2  操作演示

三、Code

import os def reNameByTime(path):     mlist = []    # 获取文件名列表    files = os.listdir(path)     # 获得名称带时间戳的新文件名列表    for filename in files:        # 获得文件的最后修改时间        modifytimes = os.path.getmtime(path + filename)        filename_lower = filename.lower()        # 筛选.jpg格式        if ".jpg" in filename_lower:            mlist.append(str(int(modifytimes)) + "-" + filename)   # .jpg     mlist = sorted(mlist)     # 遍历修改时间戳为序号    for i in range(len(mlist)):         # 截取获得原先的文件名        oldname = mlist[i][11:]     # 切片操作,从11至后         # 将时间戳部分修改为序号,得到新的文件名        if (i + 1) < 10:     # 0-9            newname = "000" + str(i + 1) + ".jpg"        elif (i + 1) > 9 and (i + 1) < 100:   # 10-100            newname = "00" + str(i + 1) + ".jpg"        elif (i + 1) > 99 and (i + 1) < 1000:   # 100-1000            newname = "0" + str(i + 1) + ".jpg"        else:            newname = str(i + 1) + ".jpg"    # 1000 - 9999 #        print(newname, oldname)         # 重命名文件,按修改时间排序并加序号前缀        os.rename(path + oldname, path + newname) #如果想执行py文件,可以将后缀改为“.py”,如果想打包成exe,需要将后缀改为“.exe”if __name__ == "__main__":    filepath = os.sys.argv[0].replace("rename.py", "")      print(os.sys.argv[0])    reNameByTime(filepath)

如果想按照其他时间进行排序:

#   os.path.getatime(file) 输出文件访问时间#   os.path.getctime(file) 输出文件的创建时间#   os.path.getmtime(file) 输出文件最近修改时间

如果想对其他类型的文件进行排序,更改对应后缀名即可。

总结

到此这篇关于Python如何根据照片修改时间重命名并排序的文章就介绍到这了,更多相关Python重命名并排序内容请搜索51zixue.net以前的文章或继续浏览下面的相关文章希望大家以后多多支持51zixue.net!


Python文件基本操作实用指南
基于Tensorflow搭建一个神经网络的实现
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。