我在文件夹中有一些视频文件(E://数据/视频),虚拟名称为
vid-dummyName.mp4
vid-dummyName (1).mp4
vid-dummyName (2).mp4
vid-dummyName (3).mp4
vid-dummyName (4).mp4
vid-dummyName (5).mp4
请告诉我如何使用Python根据
等现有数组重命名它们import os
path = 'E:/Data/Video'
files = os.listdir(path)
i = 1
names=['Not Dummy Video','Another Not Dummy Video','May be Dummy','Still Thinking','Give it a Name','Tomorrow']
for file in files:
os.rename(os.path.join(path, file), os.path.join(path, str(i)+'.mp4'))
答案 0 :(得分:0)
如果您需要在2个或更多列表之间进行1-1对应,zip
将是实现此目的的方法。
a = [1, 2, 3]
b = ['a', 'b', 'c']
for i, j in zip(a, b):
print(i, j)
1 a
2 b
3 c
对于您的示例,您需要同时zip
files
和names
,以便将files[i]
重命名为names[i]
{1}}。
i
您还可以使用for i, j in zip(files, names):
os.rename(os.path.join(path, i), os.path.join(path, '{}.mp4'.format(j)))
跟踪enumerate
中文件名的索引,并在迭代时将这些索引提供给os.listdir
列表:
names
答案 1 :(得分:0)
试
import os
path = "E:/Data/Video"
files = os.listdir(path)
saved_path = os.getcwd()
for file_ in files:
os.rename(file_, file_+".mp4")