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
廣告