【发布时间】:2017-07-30 07:06:31
【问题描述】:
我试图在 python 的范围内获取 3 个随机数而不进行替换。我这样做了
rand_lst = []
while(True):
rand = random.randint(0, length-1 )
if(len(rand_lst) == 3):
break
if(rand not in rand_lst):
rand_lst.append(rand)
此代码位于 for 循环中。这仅返回 0,因此是一个无限循环。我也尝试过 numpy.random.randint,但有些随机性是如何跟踪先前生成的数字,我最终会出现值错误。
【问题讨论】:
-
什么是
length? -
你可能想查看
random.sample:具体来说,试试random.sample(range(length), 3)。