Reputation: 57
I have a directory ("E:images") consisting of several hundred folders. Each folder contains about five separate image files. I would like to take a specific image file from each folder and place them in a separate folder called "test". The image in each folder starts with "state_0". I feel like I should be able to copy each file by that string but I'm not even able to transfer any images by file type at the moment.
This seems like it should be pretty straight forward but I'm not getting any errors and nothing is being copied into my folder when I run the script.
This is what I have:
import os
import shutil
import glob
files = glob.iglob(os.path.join(r'E:\\images', "*.bmp"))
for file in files:
if os.path.isfile(file):
shutil.copy2(file, r'E:\\test')
Upvotes: 1
Views: 88
Reputation: 1526
import os
import glob
import shutil
files = glob.iglob(os.path.join(r'E:\images', '*.bmp'))
for file in files:
print(file)
# if file is a bmp and has state_0 in filename
if file.endswith('bmp') and 'state_0' in file:
print(file)
# copy file into test
shutil.copy2(file, r'E:\test')
Upvotes: 1