Python - AI 助手

Python random.binomialvariate() 方法



Python 中的 **random.binomialvariate()** 方法用于生成遵循二项分布的随机数。此方法返回 n 次独立试验中的成功次数,前提是每次试验成功的概率为 p。

此 random.binomialvariate() 方法的等效数学表达式如下:

sum(random() < p for i in range(n))

试验次数 n 必须是非负整数,p 必须是 0 到 1(含)之间的概率值。这些确保生成的随机变量符合二项分布的属性,并且结果整数必须在 0 <= X <= n 的范围内。

此方法是在 Python 3.12 版本中引入的。如果您的 Python 版本早于 3.12,并且您尝试使用此方法,它将引发 AttributeError: module 'random' has no attribute 'binomialvariate' 错误。

语法

以下是 **random.binomialvariate()** 方法的语法:

random.binomialvariate(n=1, p=0.5)

参数

此方法接受以下参数:

  • **n:** 此参数表示独立试验或实验的次数。它必须是非负整数。

  • **p:** 这是每次试验成功的概率。它必须是 0.0 到 1.0(含)之间的值。

返回值

此方法返回一个整数,表示 n 次试验中的成功次数。

示例 1

以下是 **random.binomialvariate()** 方法的基本示例:

import random

# number of trials
n = 10  
# probability of success in each trial
p = 0.5  

# Generate a random value following a binomial distribution
number_of_successes = random.binomialvariate(n, p)
print("Number of successes: ",number_of_successes)

以下是输出:

Number of successes:  4

**注意:**生成的输出每次执行都会不同,因为它返回一个随机项。

示例 2

以下是如何从二项分布生成随机数的示例。

import random

ATOMS = 1000000
DECAY_PROB = 0.1

for i in range(10):
    print(random.binomialvariate(ATOMS, DECAY_PROB))

执行以上代码后,您将获得如下类似的输出:

99424
99757
99791
100213
99970
99557
100113
100077
100354
100256
python_modules.htm
广告