Python が乱数ジェネレーターのシードに使用したシードを確認する方法はありますか?
独自のシードを指定できることは知っていますが、Python がそれを管理してくれるので満足しています。ただし、特定の実行で得られた結果が気に入った場合、後でその実行を再現できるように、使用されたシードを知りたいです。使用されたシードがあれば、再現できます。
答えが「できない」の場合、自分でシードを生成する最善の方法は何ですか? 実行ごとにシードが常に異なるようにしたいのですが、何が使用されたかだけを知りたいのです。
ベストアンサー1
ジェネレータから自動シードを戻すことはできません。通常、次のようにシードを生成します。
seed = random.randrange(sys.maxsize)
rng = random.Random(seed)
print("Seed was:", seed)
この方法は時間ベースなので、スクリプトを(手動で)実行するたびに結果が異なりますが、複数のジェネレーターを使用している場合は、ほぼ同時に作成されるため、同じシードにはなりません。