将列表中包含的所有文件夹从目录复制到另一个文件夹

问题描述 投票:0回答:1

我想将列表中汇总的所有文件夹从一个目录复制到另一个文件夹。 该列表包含文件夹的相关名称。 现在我想将相关的复制到一个新文件夹中。

我正在使用 python 并尝试使用 shutil 解决这个问题。

我的代码没有复制任何东西,也没有输出。

source_dir = r"C:\folders\project\old"
dest_dir = r"C:\folders\project\new"
folders = kg_code_list

for i in source_dir:
    if i in folders:
        shutil.copytree(i, dest_dir)
        print(i)
python directory copy shutil
1个回答
0
投票
import os

source_dir = r"C:\folders\project\old"
dest_dir = r"C:\folders\project\new"
folders = kg_code_list

for file in os.listdir(source_dir):
    if file in folders:
        shutil.copytree(file, dest_dir)
        print(file)

这个应该穿。之前,您只是将 source_dir 作为一个字符串进行迭代,现在您要求 os 以列表的形式获取目录中的所有文件,并遍历该列表。

© www.soinside.com 2019 - 2024. All rights reserved.