我有一个包含许多文件的文件夹,我想将这些文件移入(要创建的)子文件夹(dump_1、dump_2、...),这样每个子文件夹都包含 100 个文件(或最后一个文件夹的剩余文件)。为了测试,我创建了像这样的小文本文件:
rootdir='d:/t2/'
for i in range(1000):
f=open(rootdir+"file_"+str(i)+".txt","w")
f.write("This is file "+str(i))
f.close()
现在创建子文件夹和移动文件的代码是
import random
files=os.listdir(rootdir)
random.shuffle(files)
count=1
while files:
newdir=(rootdir+"dump_"+str(count).zfill(2)+"/")
os.mkdir(newdir)
for a,b in enumerate(files):
os.rename(rootdir+b,newdir+b)
files.remove(b)
if a==99:
break
count+=1
结果真的很奇怪:前 9 个文件夹包含所需的 100 个文件。但接下来的子文件夹包含 50、25、13、6、3、2 和 1 个文件。有谁知道为什么会这样以及我该如何解决?谢谢!