random.seed(my_seed)
モジュール内の 1 つのクラスでPython 関数を使用する場合、このシードはこのモジュールでインスタンス化される他のすべてのクラスに残りますか?
ベストアンサー1
はい、シードはRandom()
モジュール内の(隠し)グローバルインスタンスに設定されています。ドキュメンテーション:
このモジュールによって提供される関数は、実際には
random.Random
クラスの隠しインスタンスのバインドされたメソッドです。 の独自のインスタンスをインスタンス化しRandom
て、状態を共有しないジェネレーターを取得できます。
Random()
シードを別々に保つ必要がある場合は、別々のインスタンスを使用します。インスタンス化するときに新しいシードを渡すことができます。
>>> from random import Random
>>> myRandom = Random(anewseed)
>>> randomvalue = myRandom.randint(0, 10)
クラスはモジュールと同じインターフェースをサポートします。