隨機的#
介紹#
Random 模組提供了對 Python random 的訪問,該模組在 VEXcode AIR 中預設可用。這些方法可以產生隨機數、浮點數以及來自清單或範圍的值——這對於為遊戲、行為和自主決策增加不可預測性非常有用。若要開始使用這些函數,請在專案頂部新增 import random。
以下是可用方法的清單:
數字產生器-直接產生隨機數或位元。
randint– 傳回兩個值(包含兩個值)之間的隨機整數。uniform– 傳回兩個數值之間的隨機浮點數。randrange– 傳回一個隨機整數,範圍為可選步長。random– 傳回 0.0(含)到 1.0(不含)之間的隨機浮點數。getrandbits– 傳回一個指定數量隨機位數的整數。
選擇-從序列中隨機選擇元素。
choice– 從非空列表或序列中傳回一個隨機元素。
狀態控制-管理或初始化隨機數產生器的狀態。
seed– 設定隨機數產生器的種子,以產生確定性結果。
數位產生器#
randint#
randint 返回一个随机整数,范围从 a(包含)到 b(包含)。
用法:
random.randint(a, b)
範圍 |
描述 |
|---|---|
|
表示範圍的包含下限的整數。 |
|
表示範圍上限的整數。 |
# Pick a number from 0 to 100
random_int = random.randint(0, 100)
controller.screen.print(random_int)
#random_int = (random integer between 0-100)
uniform#
uniform 傳回介於 start 和 end之間的隨機浮點數。
用法:
random.uniform(start, end)
範圍 |
描述 |
|---|---|
|
表示範圍下限的浮點數或整數。 |
|
表示範圍上限的浮點數或整數。 |
# # Generate a random float between 5.0 and 10.0
random_uniform = random.uniform(5.0, 10.0)
controller.screen.print(random_uniform)
# random_uniform = (random float between 5.0 and 10.0)
randrange#
randrange 傳回指定範圍內的隨機整數。
用法:
random.randrange(start, stop, step)
範圍 |
描述 |
|---|---|
|
可選。一個整數,表示範圍的起始值(含)。預設值為 0。 |
|
表示範圍的唯一結束值的整數。 |
|
可選。一個整數,表示範圍內每個數字之間的差異。預設值為 1。 |
# Generate a random integer from
# 0 to 9 (exclusive of 10)
random_range = random.randrange(10)
controller.screen.print(random_range)
# random_range = (random integer from 0 to 9)
# Generate a random integer from
# 5 to 15 (exclusive of 15)
random_range = random.randrange(5, 15)
controller.screen.print(random_range)
# random_range = (random integer from 5 to 14)
random#
random 傳回 0.0(含)到 1.0(不含)範圍內的隨機浮點數。
用法:
random.random()
範圍 |
描述 |
|---|---|
此方法沒有參數。 |
# Generate a random float between 0.0 and 1.0
random_float = random.random()
controller.screen.print(random_float)
# random_float = (random float between 0.0 and 1.0)
getrandbits#
getrandbits 傳回一個指定數量隨機位數的整數。
用法:
random.getrandbits(n)
範圍 |
描述 |
|---|---|
|
表示隨機位元數的整數 |
# Generate a random integer with 8 random bits
random_bits = random.getrandbits(8)
controller.screen.print(random_bits)
# random_bits = (random integer between 0 and 255)
選擇#
choice#
choice 從序列中隨機選擇並傳回一個項目。
用法:
random.choice(sequence)
範圍 |
描述 |
|---|---|
|
從中選擇隨機元素的非空序列(清單、元組或其他可索引物件)。 |
# Choose a random number from a list
random_choice = random.choice([10, 20, 30, 40, 50])
controller.screen.print(random_choice)
# random_choice = (randomly chosen number from the list)
國家控制#
seed#
seed 初始化隨機數產生器,設定其狀態以便可以重現隨機結果。
用法:
random.seed(a=None)
範圍 |
描述 |
|---|---|
|
可選。種子值。可以是整數、浮點數、字串、位元組或位元組數組。如果為 |
random.seed(42)
# Always return the same results
print(random.randint(1, 10))
print(random.random())