我在打印随机数列表时看到过多个线程,但没有一个线程符合我的特定要求,而且我似乎无法正确处理。在
我想开发一个代码,它将在某个间隔上生成一个随机数的列表,该列表是一个单独间隔的随机长度,而且,重复项需要在这个列表中。我也想用一条线来做。在
我想出了一个很好的尝试随机抽样,但sample不包含重复项,而且它也不允许我使列表中的数字范围大于列表本身。(例如,它不能生成一个5个数字长的列表,但数字大于1到5。)>> a = random.sample(range(10), random.randint(1,10,1))
>> print(a)
[6, 3, 4, 2, 5, 7, 8]
为了解决无重复问题和大于长度的数字问题,我尝试了这个方法,但是我不能使范围随机,否则我会得到一个类型错误:
^{pr2}$
以下是我尝试的随机范围版本:>> a = [random.randint(1,20) for x in random.randrange(1,10)]
>> print(a)
Traceback (most recent call last):
File "", line 1, in
a = [random.randint(1,20) for x in random.randrange(1,10)]
TypeError: 'int' object is not iterable
我不太清楚为什么我不能在某个区间内创建一个随机范围,但我是个初学者,所以我肯定我错过了一些东西。在