gpt4 book ai didi

python - 如何根据文件夹名称将文件从一个包含子文件夹的目录复制到另一个包含子文件夹的目录?

转载 作者:行者123 更新时间:2023-12-01 07:28:50 25 4
gpt4 key购买 nike

抱歉,我有:

目录 A 位于路径 =/Users/John/Desktop/test_1

目录 A 中的文件夹结构如下所示:

./fashion
./.DS_Store
./fashion/clothes
./fashion/.DS_Store
./fashion/2.jpg
./fashion/3.jpg
./fashion/1.jpg
./fashion/clothes/sneakers
./fashion/clothes/.DS_Store
./fashion/clothes/sneakers/2.jpg
./fashion/clothes/sneakers/3.jpg
./fashion/clothes/sneakers/1.jpg

路径 =/Users/John/Desktop/test_2 处的目录 B

目录 B 中的文件夹结构如下所示:

./fashion
./.DS_Store
./fashion/clothes
./fashion/.DS_Store
./fashion/clothes/sneakers
./fashion/clothes/high_heels
./fashion/clothes/.DS_Store

我正在尝试根据文件夹名称匹配将文件从目录 A 复制到目录 B,以便在目录 B 中包含以下内容。如果目录B中不存在folder_name,则不复制图像。

编辑:确切的文件路径不必匹配,只需 IF(目录 A 中的文件夹名称) == (目录 B 中的文件夹名称),复制内容将文件夹 A 复制到文件夹 B 中。否则,不执行任何操作。

fashion: img1, img2

fashion > clothes: img1, img2

fashion > clothes > sneakers: img1, img2

fashion > clothes > high-heels: {}

再次感谢您!

最佳答案

你可以尝试一下:

import shutil
import os

path_a = '/Users/John/Desktop/test_1'
path_b ='/Users/John/Desktop/test_2'


for root, dirs, files in os.walk(path_b):
similar_path = root.replace(path_b, path_a)
if os.path.exists(similar_path):
for file_path in (os.path.abspath(x) for x in os.listdir(similar_path) if os.path.isfile(x)):
print(f'File: {file_path} moved to --->> {root}')
shutil.copy(file_path, root)

关于python - 如何根据文件夹名称将文件从一个包含子文件夹的目录复制到另一个包含子文件夹的目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57317332/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com