import os
import shutil
import random
filenum=100
root="C:/Users/lym/Desktop/20_newsgroups/alt.atheism"
newname="C:/Users/lym/Desktop/train"
name_lst =list(os.path.join(root, name) for name in os.listdir(root))
random_name_lst = list(random.choice(name_lst) for _ in range(0,filenum))
i=0
for _ in random_name_lst:
oldname= random_name_lst[i]
i=i+1
shutil.copy(oldname,newname)
请改用random.sample()
为了分训练集做个小东西,问题是最后运行结果并不能给出我需要的数量。
比如我设置filenum=100,会给我复制出94个文件,当filenum设置得更大的时候误差会变得更大,是因为random的问题吗?
random.choice(name_lst) 每次随机选会出现重复的啊。要去除重复的啊