如何使随机选择概率偏向一个选项?

时间:2018-12-06 02:57:37

标签: python-3.x random probability

我正在python中使用random库来选择winlose

import random

choice = random.choice(['win','lose'])

无论如何,我可以说是否在代码中设置了概率,以使每次运行代码时我想要的losewin多?

2 个答案:

答案 0 :(得分:2)

好吧,@ CloC在技术上是正确的,您可以这样做,但是最好使用标准的Python库,因为它是经过设计的,代码更少,错误更少

F.e。,以60%的获胜概率进行采样

v = random.choices(["Win", "Lose"], weights=[60, 40], k=1)

答案 1 :(得分:1)

一种控制随机(不会是随机的...)的方法是:

生成1到100之间的数字:

n = random.randint(1,101)

,然后将其与您想要的赢/输百分比进行比较:

chances_to_win = 51  # 50%

if n < chances_to_win:
    print(str(chances_to_win-1) +"% chances to Win")
    choice = "Win"
else:
    print(str(100-(chances_to_win-1)) +"% chances to Lose")
    choice = "Lose"

这样,您可以控制获胜和失败的百分比。