我有一个包含3个视频文件的文件夹。我想根据视频文件名创建不同的文件夹,以保存提取的帧
我做了一个小的代码,可以读取视频文件,并根据视频文件名创建文件夹。它创建第一个视频的文件夹。但是在文件夹1内创建文件夹2,在文件夹2内创建文件夹3。下面是我的代码
def extractFrames(m,n):
if not os.path.exists:
os.makedirs(n)
vid_files=glob(m)
print(vid_files)
for v_f in range(len(vid_files)):
v1=os.path.basename(vid_files[v_f])
print(v1)
vid_name = os.path.splitext(v1)[0]
print(vid_name)
n = n +'\\video_' + vid_name
os.makedirs(n)
print(n)
如果我有3个视频文件,即video1,video2和video 3,那么代码应分别制作3个文件夹video1,video2和video3。目前,它制作了3个文件夹,但文件夹2制作在文件夹1内,文件夹3制作在文件夹2内
答案 0 :(得分:0)
将代码的最后几行更改为:
output = n +'\\video_' + vid_name
os.makedirs(output)
print(output)
通过编写n = n + '\\video_' + vid_name
,您总是将字符串连接到相同的基本字符串。您需要更改左侧的变量,以便永远不会更改n
的原始值。
考虑一下:在第一个循环中,n
将字符串\\video_
连接到它。然后,在第二个循环中,n
已经具有\\video_
位,现在将其连接一个额外的\\video_
,从而在文件夹中创建一个文件夹。