如何在 python 3 中生成 n 个随机数? n为待定变量。最好是自然数(整数> 0),
我找到的所有答案都采用一定范围内的随机整数,但是我不想从一定范围内生成数字。 (除非范围是 0 到无穷大)
用维特根斯坦的话来说,机器的限制就是语言的限制。即在计算机/计算世界中不存在无限这样的东西。但是,关于您可以使用的数据结构的最大支持大小sys.maxsize (sys.maxint
在Python 2)中获得该限制,例如可以用作最大列表索引或字符串长度等。您也可以将其传递给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]
有关差异的更多信息sys.maxint
and sys.maxsize
in 蟒蛇 2.X 和 3.X:
The sys.maxint
常量被删除,因为不再有
限制为整数值。然而,sys.maxsize
可以用作
大于任何实际列表或字符串索引的整数。它符合
实现的“自然”整数大小通常是相同的
作为sys.maxint
在同一平台上的先前版本中(假设
相同的构建选项)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)