シャッフルを使用してリストの内容を並べ替えます。最初の反復は期待どおりに機能し、元のリストの置換を生成します。しかし、2回目以降の反復では、ファイルに同じ順列が書き込まれます。なぜコードは進行中の反復で別の順列を生成しないのですか? 64、shuffleは次のコードで2回目以降の繰り返しと同じ順列を生成するのはなぜですか?
[1024 64、512、512、128、64、2048、64、512、1024]、[1024:
import random; f = open('GenerationNumbers.txt', 'w') request = [ 128, 512, 2048, 512, 64, 64, 512, 1024, 1024, 64, ] #server server = [ 4096, 2048, 2048 ] newrequest = [] newserver = [] for i in range(0, 30): random.shuffle(request) newrequest.append(request) random.shuffle(server) newserver.append(server) f.write(str(newrequest)+"\n") f.write(str(newserver)) f.flush() f.close()
以下では、出力ファイルの一部であります1024、64、512、512、128、1024、64、512、128、64、204、204、64、512、1024] [1024、64、512、512、128、64、204、512、128、64、2048、64、512、1024] ...
[[2048、4096、2048] [2048,4096,2048]、[2048,4096,2048]、[2048,4096,2048]、[2048,4096,2048]、[2048,4096,2048]、[2048,4096,2048]、[2048] 、4096,2048]、[2048,4096、 [2048、4096、2048]、[2048,4096,2048]、[2048,4096,2048]、...