如何在Python3中生成0到无穷大之间的N个随机数 [英] How to Generate N random numbers in Python 3 between 0 to infinity

查看:0
本文介绍了如何在Python3中生成0到无穷大之间的N个随机数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在python3中生成n个随机数?N为待定变量。优选地,自然数(整数>0), 我找到的所有答案都取自一个范围内的随机整数,但我不想从一个范围内生成数字。(除非范围是0到无穷大)

推荐答案

套用维特根斯坦的话说,机器的极限就是语言的极限。也就是说,在计算机/计算世界中没有无限这回事。您可以使用sys.maxsize(sys.maxint在python2中)获取您的机器支持的最大正整数,并将其传递给random.randint函数:

>>> import sys
>>> sys.maxsize
9223372036854775807
>>> random.randint(0,sys.maxsize)
7512061515276834201

要生成多个随机数,您可以使用如下列表理解:

>>> N = 10
>>> [random.randint(0,sys.maxsize) for _ in range(N)]
[3275729488497352533, 7487884953907275260, 36555221619119354, 1813061054215861082, 619640952660975257, 9041692448390670491, 5863449945569266108, 8061742194513906273, 1435436865777681895, 8761466112930659544]

有关python 2.X and 3.Xsys.maxintsys.maxsize的区别的更多信息:

已删除sys.maxint常量,因为不再有 限制为整数值。但是,sys.maxsize可以用作 大于任何实际列表或字符串索引的整数。它符合 实现的"自然"整数大小通常是相同的 与同一平台上以前版本中的sys.maxint相同(假设 相同的生成选项)。

这篇关于如何在Python3中生成0到无穷大之间的N个随机数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆