优草派  >   Python

Python如何快速生成随机整数?Python生成随机整数的方法有哪些?

翟嘉慧            来源:优草派

在python中如果只是要去生成一个随机数的话只需要使用到内置函数random()就可以了,但是想要对一个整数进行快速生成如何实现呢?想要快速生成随机整数的话就得用到其他的模块,下面一起来学习一下这篇关于“Python如何快速生成随机整数?Python生成随机整数的方法有哪些?”的文章吧,希望对大家的学习带来一定的帮助。

Python如何快速生成随机整数?Python生成随机整数的方法有哪些?

我们之有了解过对随机数生成的方法,可以使用Python中的内置函数random(),但是这个函数比较适合在对少量的随机数进行生成,如果数据量较大骂他hi给性能带来一定的损失,所以我们可以考虑其他的方法来快速生成随机数。方法如下 :

1、random.random()

首先第一种方法,就是我们可以使用random.random()进行代替,可以使用它去乘以我们的整数限制,就可以得到一个整数,由于random()可以生成均匀的[0,1)分布,因此扩展之后也可以得到整数上的均匀分布,举个例子:

$ python3 -m timeit -s 'import random' 'int(128 * random.random())'
10000000 loops, best of 3: 0.193 usec per loop

在上面的代码中,我们是对0-128这个范围内生成了随机整数,生成的速度会更加的快,它有一个缺点就是因为python是用一个算近的来表示浮点数的,最高精度为53,如果超过这个范围,它生成是数就是不完整的,超出范围的数会丢失。

2、使用 getrandbits()

这种方法也可以对随机数进行快速的生成,代码如下:

$ python3 -m timeit -s 'import random' 'random.getrandbits(7)'
10000000 loops, best of 3: 0.102 usec per loop

这个方法的好处就是快速,但是对生成随机数的范围有限制,只能在[0,2^n]内有效。

有关“Python如何快速生成随机整数?Python生成随机整数的方法有哪些?”的内容介绍到这里结束了,希望对大家的学习带来一定的帮助,想要学习更多的Python随机生成的知识可以继续关注学习哦!

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。