各サブフォルダーに100個のファイル(または最後のフォルダーの残りのファイル)が含まれるように、サブフォルダー(dump_1、dump_2、...)に移動(作成する)したい多くのファイルを含むフォルダーがあります。テストのために、次のような小さなテキスト ファイルを作成しました。
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 個のファイルが含まれています。それがなぜなのか、どうすれば修正できるのか、誰にも手がかりがありますか? ありがとうございました!