小编典典

如何在不复制python中的文件夹结构的同时从文件夹(包括子文件夹)复制所有文件

python

有人可以帮我有关如何将所有文件从文件夹复制到python中的另一个目标文件夹的问题。问题是我不想复制子目录结构。但是我想要其中的文件。

例如,假设在根文件夹中有3个文件夹,每个文件夹包含10个文件。每个文件夹中都有2个文件夹,每个文件夹包含5个文件。(因此每个第一级文件夹下总共有20个文件和2个子目录)。将总数增加到60个文件。

我希望将所有这60个文件复制到单个目标目录中,而不使用子文件夹结构。

这是我尝试过的代码:

# path : source folder path
# compiled_path: destination folder path
w = os.walk(path)
for root, dirs, files in w:
    for dir_name in dirs:
        file_list_curent_dir = os.walk(path+"\\"+dir_name).next()[2]
        for item in file_list_curent_dir:
            shutil.copy(path+"\\"+dir_name+"\\"+item, compiled_path+"\\"+item )

它复制最上层的文件,而不是子目录中的文件夹。

非常感谢您的宝贵时间。


阅读 214

收藏
2021-01-20

共1个答案

小编典典

import os
import shutil

for root, dirs, files in os.walk('.'):  # replace the . with your starting directory
   for file in files:
      path_file = os.path.join(root,file)
      shutil.copy2(path_file,'destination_directory') # change you destination dir
2021-01-20