问题描述
我正在用 Python 设计代码,需要在给定概率的情况下生成随机结果。
示例: 有两种可能的结果:攻击或不攻击。假设攻击发生的概率为 25%,我如何根据该概率生成结果?
解决方法
让我们代表1 for ATTACK
和0 for NO-ATTACK
,我们创建一个att_or_not
列表,其中选择1
是0.25
,所以我们使用random.randint(0,3)
来选择列表中的一项。 在此处查看逻辑
import random
rand_num = random.randint(0,3)
def prob(rand_num,list_):
if list_[rand_num]:
return 'Attack'
return 'No-Attack'
# [1,0] => here 1 represent ATTACK and 0 represent NO_ATTACK
att_or_not = [1,0]
result = prob(rand_num,att_or_not)
print(result)