python 从100个数里不重复抽取5个数,抽取概率按数的大小
时间: 2024-05-14 17:19:30 浏览: 78
不重复抽题,共100道题,可在宏中自由修改。
递减,如何实现?
可以使用Python内置的random模块中的sample函数来实现从100个数中随机抽取5个数且不重复。根据概率按数的大小递减这一要求,我们可以先对这100个数进行排序,然后按照排序后的顺序作为概率参数传给random.choices函数。实现代码如下:
```python
import random
nums = range(1, 101)
nums_probs = [i / sum(nums) for i in nums] # 根据数的大小递减生成概率参数
result = random.sample(nums, k=5, weights=nums_probs) # 从100个数中抽取5个数
print(result)
```
这样就可以实现按照数的大小递减进行抽取的功能了。
阅读全文