程序员文章、书籍推荐和程序员创业信息与资源分享平台

网站首页 > 技术文章 正文

Python的random模块常用方法

hfteth 2025-05-16 13:27:44 技术文章 7 ℃

random 模块在 Python 中提供了许多用于生成随机数、随机选择元素等操作的功能。除了 random.choice,这里是一些常用的 random 方法:


1. random.randint(a, b)


返回一个指定范围内的整数,包含 a 和 b。


import random

random_int = random.randint(1, 10) # 返回 1 到 10 之间的随机整数

print(random_int)


2. random.uniform(a, b)


返回一个指定范围内的浮动数(浮点数),包括 a 和 b 之间的随机值。


random_float = random.uniform(1.5, 3.5) # 返回 1.5 到 3.5 之间的随机浮动数

print(random_float)


3. random.random()


返回一个 [0.0, 1.0) 区间内的随机浮动数(不包括 1.0)。


random_float = random.random() # 返回一个 0 到 1 之间的随机浮动数

print(random_float)


4. random.shuffle(sequence)


将序列中的元素原地打乱顺序。返回值为 None,会直接修改原序列。


items = [1, 2, 3, 4, 5]

random.shuffle(items) # 打乱顺序

print(items)


5. random.sample(sequence, k)


从序列中随机选择 k 个不同的元素,返回一个列表。k 不能大于序列长度。


items = [1, 2, 3, 4, 5, 6]

sample_items = random.sample(items, 3) # 随机选择 3 个不同的元素

print(sample_items)


6. random.choices(sequence, k)


从序列中随机选择 k 个元素(可以重复选择),返回一个列表。


items = ['apple', 'banana', 'cherry']

random_choices = random.choices(items, k=3) # 随机选择 3 个元素(可以重复)

print(random_choices)


7. random.seed(a=None)


设置随机数生成器的种子,使得每次生成的随机数序列相同。a 可以是整数、浮点数或者 None(使用当前时间戳作为种子)。


random.seed(42) # 固定种子,确保生成的随机数序列每次都相同

print(random.random())


8. random.gauss(mu, sigma)


返回一个高斯分布(正态分布)的随机数,mu 是均值,sigma 是标准差。


random_gaussian = random.gauss(0, 1) # 均值为 0,标准差为 1

print(random_gaussian)


9. random.triangular(low, high, mode)


返回一个三角分布的随机数。low 是下界,high 是上界,mode 是最可能的值。


random_triangular = random.triangular(1, 10, 5) # 生成一个 1 到 10 之间,最可能值为 5 的随机数

print(random_triangular)


10. random.betavariate(alpha, beta)


返回一个贝塔分布的随机数。alpha 和 beta 是分布的参数。


random_beta = random.betavariate(2, 5) # 生成一个贝塔分布的随机数

print(random_beta)


这些方法可以帮助你生成各种不同的随机数和随机选择,对于数据模拟、游戏开发、随机化算法等非常有用。希望这些能帮助你更好地了解 random 模块!如果你有其他问题,随时告诉我!

最近发表
标签列表