random模块篇

Python 的 random 模块是一个非常实用的工具,它提供了生成各种类型随机数的方法。无论是生成随机整数、浮点数,还是从序列中随机选择元素,random 模块都能满足你的需求。下面是一个详细的教程,介绍 random 模块的主要功能和用法。
导入模块

首先,你需要导入 random 模块才能使用它:


import random

生成随机整数

randint(a, b)

返回一个介于 a 和 b 之间(包括 a 和 b)的随机整数。


random_int = random.randint(1, 10)  

print(random_int)  # 输出 1 到 10 之间的一个整数

randrange(start, stop[, step])

返回一个介于 start 和 stop 之间(不包括 stop)的随机整数,步长为 step。如果不提供 step,则默认为 1。


random_num = random.randrange(0, 100, 10)  

print(random_num)  # 输出 0 到 90 之间(不包括 90)的一个整数,步长为 10

生成随机浮点数

random()

返回一个介于 0.0 和 1.0 之间的随机浮点数。


random_float = random.random()  

print(random_float)  # 输出 0.0 到 1.0 之间的一个浮点数

uniform(a, b)

返回一个介于 a 和 b 之间的随机浮点数。


random_float = random.uniform(1.0, 10.0)  

print(random_float)  # 输出 1.0 到 10.0 之间的一个浮点数

从序列中随机选择

choice(seq)

从非空序列 seq 中随机选择一个元素。


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

random_fruit = random.choice(my_list)  

print(random_fruit)  # 输出列表中的一个随机元素

shuffle(x)

就地打乱序列 x 的元素。


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

random.shuffle(my_list)  

print(my_list)  # 输出被打乱顺序的列表

sample(population, k)

从 population 序列中随机选择 k 个不重复的元素。


my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]  

random_sample = random.sample(my_list, 3)  

print(random_sample)  # 输出列表中的 3 个随机且不重复的元素

设置随机数种子

使用 seed(a) 函数可以为随机数生成器设置种子,这样每次使用相同的种子时,生成的随机数序列都是相同的。这对于需要可重现结果的测试或模拟非常有用。


random.seed(42)  # 设置种子为 42  

print(random.randint(1, 10))  # 多次运行这段代码将输出相同的整数

注意事项

  • random 模块生成的随机数是伪随机的,意味着它们是由确定性算法生成的。因此,在需要加密安全的随机数时,不应使用 random 模块,而应使用 secrets 模块。
  • 默认情况下,随机数生成器的种子是系统提供的,这意味着每次程序运行时生成的随机数序列可能是不同的。通过设置种子,可以确保每次运行程序时生成相同的随机数序列。
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

熊猫Devin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值