如何将目录中所有文件的一定比例移动到另一个目录中?

时间:2018-06-15 17:24:28

标签: python python-3.x

我喜欢以下数据结构:

-folder1
--subfolder1
--subfolder2
--ytz
--subfolder128
-folder2
--subfolder1
--subfolder2
--ytz
--subfolder128

在folder1的每个子文件夹中都有不同数量的文件。我想将这些文件的10%移动到folder2的相应子文件夹,并将它们删除到folder1的相应文件夹中。

所有子文件夹(来自folder1 / folder2)的名称都相同。

我知道如何将文件从一个目录移动到另一个目录

for i in range(len(synonym_list)):
    dest1 = '../data/mushrooms_with_seperates_synonms/'+synonym_list[i][0]+'/'
    for j in range(len(synonym_list[i])):
        if (j != 0):
            source = '../data/mushrooms_with_seperates_synonms/'+synonym_list[i][j]+'/'
            files = os.listdir(source)
            for f in files:
                    shutil.move(source+f, dest1)
            shutil.rmtree(source)

1 个答案:

答案 0 :(得分:1)

for i in range(len(synonym_list)):
    dest1 = '../data/mushrooms_with_seperates_synonms/'+synonym_list[i][0]+'/'
    for j in range(len(synonym_list[i])):
        if (j != 0):
            source = '../data/mushrooms_with_seperates_synonms/'+synonym_list[i][j]+'/'
            files = os.listdir(source)
            for k, f in enumerate(files):
                if not k % 10:
                    shutil.move(source+f, dest1)