以下のコードは、私が欲しいものを説明しようとしています。基本的に、互いに独立して動作する「ランダム」の2つのインスタンスが必要です。別のクラスの「ランダム」に影響を与えずに、あるクラス内に「ランダム」をシードしたい。どうやってやるの?
class RandomSeeded:
def __init__(self, seed):
import random as r1
self.random = r1
self.random.seed(seed)
def get(self):
print self.random.choice([4,5,6,7,8,9,2,3,4,5,6,7,])
class Random:
def __init__(self):
import random as r2
self.random = r2
self.random.seed()
def get(self):
print self.random.choice([4,5,6,7,8,9,2,3,4,5,6,7,])
if __name__ == '__main__':
t = RandomSeeded('asdf')
t.get() # random is seeded within t
s = Random()
s.get()
t.get() # random should still be seeded within t, but is no longer