如何随机选择图像并将其放入Python中的多个文件夹

时间:2018-11-30 04:47:59

标签: python

我有一个包含以下图像的目录,我想随机选择3张图像并将它们放在多个文件夹中,例如:1、2和3等文件夹。我如何在Python中做到这一点?谢谢。

enter image description here

到目前为止,我已经尝试过:

import os, random
import shutil 
import glob


folder = "C:/Users/User/Desktop/Image"
a=random.choice(os.listdir(folder))
print(a)

src_dir = "C:/Users/User/Desktop/Image"
dst_dir = "C:/Users/User/Desktop/Image/1"
for jpgfile in glob.iglob(os.path.join(src_dir, "*.jpg")):
    shutil.copy(jpgfile, dst_dir)

2 个答案:

答案 0 :(得分:1)

尝试一下:

import os
import shutil
import glob
import random

to_be_moved = random.sample(glob.glob("C:/Users/User/Desktop/Image/*.jpg"), 3):

for f in enumerate(to_be_moved, 1):
    dest = os.path.join("C:/Users/User/Desktop", str(f[0]))
    if not os.path.exists(dest):
        os.makedirs(dest)
    shutil.copy(f[1], dest)

答案 1 :(得分:0)

问题解决了。

import os, random
import shutil

m = 3
n = 3

src_dir = "C:/Users/User/Desktop/test/source/"
dst_dir = "C:/Users/User/Desktop/test/destination/"

file_list = os.listdir(src_dir)

for i in range(m):
    for j in range(n):
        a = random.choice(file_list)
        #file_list.remove(a)
        shutil.copy(src_dir + a, dst_dir + str(i+1) + "/" + a)