|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
python学习列表获取元素后“抽奖”如何规定抽取元素的概率
- import random
- prizes=['一等奖','二等奖','三等奖','谢谢惠顾']
- random.choice(prizes)
- print(random.choice(prizes))
复制代码
如果你想根据自定义的概率来抽取奖品,可以使用random.choices()函数并提供一个weights参数。
weights参数是一个概率列表,与奖品列表中的元素一一对应。
请注意,概率值应该是非负的,而且总和不一定要等于1,它们将被归一化为概率。
例如,你可以使用以下代码为每个奖项设定不同的概率:
- import random
- prizes = ['一等奖', '二等奖', '三等奖', '谢谢惠顾']
- weights = [1, 5, 20, 74] # 代表各奖项的概率:一等奖 1%,二等奖 5%,三等奖 20%,谢谢惠顾 74%
- # 使用 random.choices 函数进行抽奖
- result = random.choices(prizes, weights=weights, k=1)
- print(result[0])
复制代码
在这个例子中,weights列表表示一等奖的概率为1%,二等奖为5%,三等奖为20%,谢谢惠顾为74%。
random.choices()函数的k参数表示你希望抽取的元素数量,这里我们设置为1。
函数返回一个列表,包含抽取到的元素,我们用result[0]获取并打印抽取到的奖项。
|
|