【发布时间】:2011-08-29 06:36:56
【问题描述】:
我想将一个固定的种子(字符串)传递给一个函数,然后让它从列表中随机选择一项。但是,如果它使用相同的种子,它应该是来自同一个列表的同一个项目!显然这根本不是随机的,但它应该或多或少看起来是随机的并且大致均匀分布。应该也挺快的。
为了演示,这就是随机的工作原理。
>>> random.seed('Python')
>>> random.choice([1,2,3,4,5,6,7,8,9,0])
3
>>> random.choice([1,2,3,4,5,6,7,8,9,0])
6
>>> random.choice([1,2,3,4,5,6,7,8,9,0])
2
我想要的是这个。
>>> notrandom([1,2,3,4,5,6,7,8,9,0],seed='Python')
4
>>> notrandom([1,2,3,4,5,6,7,8,9,0],seed='Python')
4
>>> notrandom([1,2,3,4,5,6,7,8,9,0],seed='Python')
4
仅当相同的列表与相同的种子字符串一起使用时,它才需要是可重现的。
【问题讨论】:
-
只要您在每次选择之前重新播种
random就可以使用,而您在这里没有这样做。 -
4.通过公平的掷骰子选择。保证是随机的。
标签: python python-2.7