在 OpenBayes 的 Python 中生成随机数字

在 Python 程序中使用随机数非常有用。假如你在玩《龙与地下城》(Dungeons & Dragons)并且想要创建一个小型的 Python 程序来为你掷骰子。虽然用实体骰子掷骰子对玩家来说带来了很多满足感,但为此创建一个有趣的小应用程序是学习在 Python 中使用随机数的好方法。

OpenBayes 平台跑了上线了在 Python 中生成随机数字的教程,该教程已经搭建好了环境,直接克隆即可启动,使用我的邀请链接,还可以获得 4 小时免费 4090 哦~

openbayes.com/console/sig...

登录平台后,打开「公共教程」,找到「如何在 Python 中生成随机数字」的教程,进入后点击右上角的「克隆」。

等待分配好资源后,点击「打开工作空间」。

双击打开左侧导航栏中 Random.ipynb 文件,进入教程。

运行 import random 导入 random 模块。

之后定义一个变量 n,使用 randint 函数来生成一个 0 到 10 之间的随机数,此处 randint 前面需要加上 random,以表示它属于 random 库内,这样 Python 可以知道我们调用的是哪一个库中的 randint。

运行 print(n) 打印 n,可以看见此次的随机数为 1。

我们新建一个终端,将终端拖到下面。

运行 touch simplerand.py 的命令,可以看到在,左侧生成了一个 Python 文件。

我们将之前的代码全部复制进入文件之中,然后保存,使用 !python3 simplerand.py 命令运行这个文件,可以看到它直接得到了一个随机数字 3。

再次运行 !python3 simplerand.py,得到了一个随机数字 1。

也可以直接在 notebook 中运行这段命令得到运行结果。

但是更推荐在 notebook 中使用 % 加上 run 命令来运行一段 Python 文件。

如果随机数不想包括范围最外层的数字,可以使用 randrange 函数排除设定范围内最外面两个数字作为输出,通过运行 n = random.randrange(0,10) 后,可以得到 1 到9 之间的随机数字,而不包括 0 和 10 。

下面我们设计一个复杂一点的随机数生成器,在实际引用中我们的随机数范围可能需要依赖用户的输入,所以我们需要设计一个可以接受用户输入作为范围的随机数生成器。首先导入 random 模块,然后定义一个 number_1 变量接收用户的输入,运行 number_1 = input("Enter the number of sides on your dice from 3, 6, 10, 20, and 100: ") ,可以输入 3,6,10,20,100 中的任何一个数字。

我们这里选择 20,然后将用户输入转化为整数类型,输入到我们的 randint 中,运行n = random.randint(0, int(number_1)),我们得到一个随机数字 n,打印这个随机数字可以看见我们的随机数字为 11 。

我们试着运行这个程序,输入一个数字,比如说 100,它生成了 94 作为随机数字。

我们创建一个新的文件,将import random number_1 = input("Enter the number of sides on your dice from 3, 6, 10, 20, and 100: ") n = random.randint(0, int(number_1)) print(n)

复制到新文件中。

然后在终端中使用 !python3 rando.py 来运行我们的代码,输入一个数字就可以得到一个随机数字。

如果想在 notebook 中直接使用这行代码,需要把前面的 Python 换为 run 命令,每次运行应用程序时,将得到一个从 0 到用户输入的数字范围内的伪随机结果。

我们可以添加一个 while 循环来不断地获取用户的输入,从而不断地生成相应的随机数。import random while True: number_1 = input("Enter the number of sides on your dice from 3, 6, 10, 20, and 100: ") n = random.randint(0, int(number_1)) print(n)

如果觉得文字教程不好理解,可以在 B 站搜索视频【Python 基础教程】在 Python 中生成随机数字,根据学习操作~

相关推荐
阿文和她的Key9 分钟前
PHP2Shell事故四层拆解:AI找洞是小时级,披露协调还是邮件级
网络·人工智能·架构·php
一条泥憨鱼23 分钟前
【Redis | 黑马点评】附近商铺功能源码解读
数据库·redis·缓存
2601_9656196928 分钟前
没时间给开源项目做宣传?AI自动化生成整套物料
人工智能·开源·自动化
CCblandy36 分钟前
前缀缓存命中率不靠引擎靠排列:本机仿真 3 轮,易变字段放开头 98.0%→0.0%
人工智能·python·算法·自然语言处理·性能优化
DisonTangor1 小时前
MOSS-Image-Base 实战:从文生图到 JSON 布局精准控图
人工智能·ai作画·开源·aigc·1024程序员节
念何架构之路1 小时前
Go reflect 包:结构体反射 —Field、Tag 与 VisibleFields
java·数据库·golang
INDEMIND1 小时前
INDEMIND携Donutbot“多多”亮相2026科大讯飞1024开发者节
人工智能·具身机器人·陪伴机器人·donutbot
forest_091 小时前
用Python复刻ClaudeDuet:主动式Agent四件套,定时晨报、后台巡检、危险动作审批(附完整可运行代码)
人工智能·python·架构·prompt·agi
我叫洋洋1 小时前
用 Qoder(AI 编程助手)把 Cadence 16.6 从零配到能画板
人工智能·单片机·嵌入式硬件·电路·1024程序员节
EnCi Zheng2 小时前
PostgreSQL 实战指南:安装配置、数据类型、索引选型、MVCC 事务与高可用备份全解析
数据库·sql·postgresql·索引·1024程序员节