随机数#

简介#

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)

参数

描述

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)

参数

描述

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)

参数

描述

start

可选。一个整数,表示范围的起始值(含)。默认值为 0。

stop

一个整数,表示范围的终止值(不含)。

step

可选。一个整数,表示范围内每个数字之间的差值。默认值为 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)

参数

描述

n

表示随机位数的整数 (0 <= n <= 32)。

# 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)

参数

描述

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)

参数

描述

a

可选。种子值。可以是 int、float、str、bytes 或 bytearray。如果为 None(默认),则使用当前系统时间。

random.seed(42)

# Always return the same results
print(random.randint(1, 10))
print(random.random())