Python - AI 助手

Python random.triangular() 方法



Python 中的 **random.triangular()** 方法生成一个在由参数 `low` 和 `high` 定义的范围内随机的浮点数。此函数遵循三角分布,其中值分布在最小值(`low`)和最大值(`high`)之间,峰值在众数处。这意味着更可能选择接近众数的值,但是 `low` 和 `high` 之间的任何值都是可能的。

默认情况下,`low` 和 `high` 参数分别设置为 0 和 1,而众数设置为 `low` 和 `high` 之间的中间点,从而产生对称分布。

语法

以下是 triangular() 方法的语法:

random.triangular(low, high, mode)

参数

Python random.triangular() 方法接受以下参数:

  • **low:** 分布的下限。

  • **high:** 分布的上限。

  • **mode:** 最可能的值(分布的峰值),介于 `low` 和 `high` 之间。

返回值

此 **random.triangular()** 方法返回一个遵循三角分布的随机浮点数。

示例 1

让我们来看一个使用 **random.triangular()** 方法生成单个随机浮点数的基本示例。

import random

# Parameters
low = 0
high = 100

# Generate a single random floating point number
random_value = random.triangular(low, high)

print("Generated random floating point number:", random_value)

以下是输出:

Generated random floating point number: 50.941793194646195

**注意:** 由于其随机性,每次运行程序时生成的输出都会有所不同。

示例 2

此示例使用random.triangular() 方法生成一系列随机浮点数。每个结果值都遵循介于 0 和 100 之间的三角分布,峰值(众数)位于 10。

import random

# Parameters
low = 0
high = 100
mode = 5

# Generate multiple random floating point numbers
random.seed(100)
sample = [random.triangular(low, high, mode) for _ in range(10)]

print("Generated random floating point number:", sample)

执行上述代码时,您将获得如下所示的类似输出:

Generated random floating point number: [9.910366431476916, 28.04033451219499, 53.33573266149688, 47.107426380192706, 49.53823470998988, 26.64052298105129, 56.413239886033786, 33.38591319476359, 6.519842946194032, 28.107621205331426]

示例 3

这是另一个示例,它使用random.triangular() 方法从 0 到 100 的三角分布中生成一个包含 1000 个随机浮点数的列表,峰值(众数)更接近 95。然后计算并打印这些数字的平均值。

import random

# Parameters
low = 0
high = 100
mode = 95  # Closer to high

# Generate a sample
random.seed(100)
sample = [random.triangular(low, high, mode) for _ in range(1000)]

# Display the average
print('Average:', round(sum(sample) / len(sample), 2))

上述代码的输出如下所示:

Average: 63.96
python_modules.htm
广告