在 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 中生成随机数字,根据学习操作~

相关推荐
HashData酷克数据几秒前
官宣:Apache Cloudberry (Incubating) 2.0.0 发布!
数据库·开源·apache·cloudberry
秋难降1 分钟前
SQL 索引突然 “罢工”?快来看看为什么
数据库·后端·sql
YF云飞12 分钟前
数据仓库进化:Agent驱动数智化新范式
数据仓库·人工智能·ai
ningmengjing_28 分钟前
理解损失函数:机器学习的指南针与裁判
人工智能·深度学习·机器学习
TDengine (老段)30 分钟前
TDengine 时间函数 TODAY() 用户手册
大数据·数据库·物联网·oracle·时序数据库·tdengine·涛思数据
码界奇点40 分钟前
KingbaseES一体化架构与多层防护体系如何保障企业级数据库的持续稳定与弹性扩展
数据库·架构·可用性测试
程序猿炎义43 分钟前
【NVIDIA AIQ】自定义函数实践
人工智能·python·学习
小陈phd1 小时前
高级RAG策略学习(四)——上下文窗口增强检索RAG
人工智能·学习·langchain
悟乙己1 小时前
数据科学家如何更好地展示自己的能力
大数据·数据库·数据科学家
居然JuRan1 小时前
阿里云多模态大模型岗三面面经
人工智能