批量重命名多个子目录下图片名称
目录示例
- 2019-9-20
- 大坨头
- 1_0_1.jpg
- 1_0_2.jpg
- 1_0_3.jpg
- …
- 前丞相
- 2_0_1.jpg
- 2_0_2.jpg
- 2_0_3.jpg
- …
- 莱茵家园
重命名之后(地名对应的编号_照片排序编号_根目录时间)
- 2019-9-20
- 大坨头
- 001_001_20190920.jpg
- 001_002_20190920.jpg
- 001_003_20190920.jpg
Python源码
import os
import sys
def Rename( ):
list=[]
m = 0
k = 0
lastname = "_20190920"
startNumber = 1
fileType = ".jpg"
f = open("C:\\Users\\Administrator\\Desktop\\1.txt", "r")
lines = f.readlines()
for line in lines:
line = line.strip()
list.append(line)
number = {}
i = 1
for ls in list:
if i < 10:
number[ls] = str("00"+str(i))
else:
number[ls] = str("0"+str(i))
i += 1
f.close()
path = input("请输入路径(例如D:\\\\picture):")
filelist = os.listdir(path)
print("该时间内文件夹个数:" + str(filelist.__len__()) + "个,名称如下:")
for filename in filelist:
for placename in sorted(number.keys()):
if filename == placename:
print(filename)
path1 = str(path)+str("\\")+str(filename)
count = 0
subfilelist = os.listdir(path1)
for files in subfilelist:
Olddir = os.path.join(path1, files)
if os.path.isdir(Olddir):
continue
Newdir = os.path.join(path1,number[placename] + "_" + str("00" + str(count + int(startNumber))) + lastname + fileType)
os.rename(Olddir, Newdir)
count += 1
m += 1
k += 1
print("\n一共修改了" + str(k) + "个文件夹," + str(m) + "张照片")
Rename()