【发布时间】:2010-02-08 03:42:33
【问题描述】:
下面的代码试图说明我想要什么。我基本上想要两个相互独立运行的“随机”实例。我想在一个班级中播种“随机”而不影响另一个班级的“随机”。我该怎么做?
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
【问题讨论】:
-
这能回答你的问题吗? python maintain two different random instance。尽管这两个问题之间的反对票/访问量相对较低,但在欺骗中接受的答案似乎比该线程中的任何内容都更令人满意。
标签: python class random module seed