在 OpenBayes 的 Python 中生成随机数字

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

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

openbayes.com/console/sig…

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

image.png

image.png

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

image.png

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

image.png

运行 import random 导入 random 模块。

image.png

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

image.png

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

image.png

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

image.png

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

image.png

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

image.png

image.png

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

image.png

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

image.png

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

image.png

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

image.png

下面我们设计一个复杂一点的随机数生成器,在实际引用中我们的随机数范围可能需要依赖用户的输入,所以我们需要设计一个可以接受用户输入作为范围的随机数生成器。首先导入 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 中的任何一个数字。

image.png

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

image.png

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

image.png

我们创建一个新的文件,将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) 复制到新文件中。

image.png

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

image.png

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

image.png

我们可以添加一个 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)

image.png

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

  • 21
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值