我有一个包含以下图像的目录,我想随机选择3张图像并将它们放在多个文件夹中,例如:1、2和3等文件夹。我如何在Python中做到这一点?谢谢。
到目前为止,我已经尝试过:
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)
答案 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)