循环浏览文件夹并为每个文件夹创建新的子文件夹,然后在 Python 中移动图像
Loop through folders and create new subfolders for each then move images in Python
假设我有一个包含子文件夹 project1, project2, project3, ...
的文件夹。
在每个项目中,我都有固定名称为process
、progress
和session
的子文件夹,在这些子文件夹中,还有其他子文件夹和图像文件。
现在我想为每个 project
创建子文件夹 files1
以移动 process
中的所有图像,并创建 files2
以移动 [=] 中的所有图像14=] 和 session
.
请注意每个项目的图像名称都是唯一的,因此我们忽略图像名称重复问题。
为 project1
创建 files1
,我使用:
import os
dirs = './project1/files1'
if not os.path.exists(dirs):
os.makedirs(dirs)
但我需要遍历所有项目文件夹。
我们如何在 Python 中做到这一点?真诚的感谢。
为每个 project
创建 file1
和 file2
:
# Remove non-images files
base_dir = './'
for root, dirs, files in os.walk(base_dir):
for file in files:
# print(file)
pic_path = os.path.join(root, file)
ext = os.path.splitext(pic_path)[1].lower()
if ext not in ['.jpg', '.png', '.jpeg']:
os.remove(pic_path)
print(pic_path)
# create files1 and files2
for child in os.listdir(base_dir):
child_path = os.path.join(base_dir, child)
os.makedirs(child_path + '/file1', exist_ok=True)
os.makedirs(child_path + '/file2', exist_ok=True)
假设我有一个包含子文件夹 project1, project2, project3, ...
的文件夹。
在每个项目中,我都有固定名称为process
、progress
和session
的子文件夹,在这些子文件夹中,还有其他子文件夹和图像文件。
现在我想为每个 project
创建子文件夹 files1
以移动 process
中的所有图像,并创建 files2
以移动 [=] 中的所有图像14=] 和 session
.
请注意每个项目的图像名称都是唯一的,因此我们忽略图像名称重复问题。
为 project1
创建 files1
,我使用:
import os
dirs = './project1/files1'
if not os.path.exists(dirs):
os.makedirs(dirs)
但我需要遍历所有项目文件夹。
我们如何在 Python 中做到这一点?真诚的感谢。
为每个 project
创建 file1
和 file2
:
# Remove non-images files
base_dir = './'
for root, dirs, files in os.walk(base_dir):
for file in files:
# print(file)
pic_path = os.path.join(root, file)
ext = os.path.splitext(pic_path)[1].lower()
if ext not in ['.jpg', '.png', '.jpeg']:
os.remove(pic_path)
print(pic_path)
# create files1 and files2
for child in os.listdir(base_dir):
child_path = os.path.join(base_dir, child)
os.makedirs(child_path + '/file1', exist_ok=True)
os.makedirs(child_path + '/file2', exist_ok=True)