【发布时间】:2018-07-10 04:33:02
【问题描述】:
我有一个结构如下的文件夹 (A):
A\b
A\c
A\d
我想像这样将文件夹 b、c 和 d 向下复制 3 次:
A\b\b1\b2\b3
A\c\c1\c2\c3
A\d\d1\d2\d3
其中 b1、b2 和 b3 是文件夹 b 的副本,c 和 d 也是如此。
当我运行下面的代码时,我最终得到了所需的结构,但还在每个子文件夹中添加了三个副本,因此 A\b\b1 具有 b1、b2 和 b3 文件夹。问题与循环有关,但我无法确定它
import os
import sys
import shutil
list1= [1,2,3]
path = "C:\ladg\oner"
root, dirs, files = os.walk(path).next()
for dir in dirs:
for i in list1:
new_folder_path = os.path.join(root,dir, dir+ str(i))
shutil.copytree(os.path.join(root, dir), new_folder_path)
【问题讨论】:
-
将原始目录(例如
b)复制到目录tmp_b(具有唯一名称)。将其复制到b1和b1\b2,然后将临时副本移动到b1\b2\b3。
标签: python shutil os.walk python-os