1
A
回答
6
您正在寻找random.random
。
>>> import random
>>> help(random)
>>> random.random()
0.8423026866867628
它不使用与drand48
相同的发生器。 drand48
系列使用48位线性同余生成器,而Python随机模块使用高级Mersenne Twister算法。
如果你想完全相同输出为drand48
,你可以在Python中实现它。
# Uncomment the next line if using Python 2.x...
# from __future__ import division
class Rand48(object):
def __init__(self, seed):
self.n = seed
def seed(self, seed):
self.n = seed
def srand(self, seed):
self.n = (seed << 16) + 0x330e
def next(self):
self.n = (25214903917 * self.n + 11) & (2**48 - 1)
return self.n
def drand(self):
return self.next()/2**48
def lrand(self):
return self.next() >> 17
def mrand(self):
n = self.next() >> 16
if n & (1 << 31):
n -= 1 << 32
return n
但是,输出将明显低于Python的标准随机数生成器。 rand48
系列功能在1989年被SVID 3宣布为废弃。
相关问题
- 1. 是否有任何laplacesdemon软件包相当于matlab
- 2. 是否有相当于Java的Boost :: Python?
- 3. 是否有相当于python的bootstrap.php?
- 4. php是否有相当于python的virtualenv或ruby的沙箱?
- 5. Python是否有关闭相当于__init__()
- 6. 是否有任何WebM libvpx .Net包装?
- 7. python中是否有任何广泛使用的用于MySQL的包装器/ API?
- 8. 是否有任何Ruby应用服务器相当于JEE的Glassfish或JBoss的?
- 9. 是否有相当于Perl6或Perl5的Bottle或Sinatra?
- 10. Go/golang - 它是否具有与python“pip install”相同的安装包?
- 11. 德尔福 - 是否有任何相当于C#锁?
- 12. 在Django或Python中是否有任何方法用于预测?
- 13. 是否有与HighLine相当的Python?
- 14. Django是否具有相当于Rails的“捆绑安装”?
- 15. 是否有相当于$ sformat的函数?
- 16. 是否有相当于Django Model.objects.filter()的CherryPy?
- 17. 是否有相当于webforms的T4MVC?
- 18. PHP是否有相当于Java的RequestDispatcher.forward?
- 19. 是否有相当于OS X的lsusb
- 20. 是否有相当于MATLAB的igraph?
- 21. 是否有相当于$ {LIB}的dyld?
- 22. 是否有相当于c#中的typedef?
- 23. 是否有相当于os.Args()的函数?
- 24. Sencha是否有相当于jQuery的Radioset?
- 25. 是否有相当于WPF的mt.dialog?
- 26. 是否有相当于C++的System.Diagnostics.EventLog?
- 27. Ruby,Log4Ruby是否有相当于Log4J的?
- 28. 是否有相当于Java的Python的itertools?
- 29. 是否有一个相当于python的optparse.OptionParser的perl模块?
- 30. cron周围是否有Python包装?
我不确定输出是否与drand48()相同...所以这就是为什么我问这个问题... – Shan
它的输出将会不同因为它使用不同的算法来生成数字。但是,这两个函数都近似于一致的(0,1)分布。 –
我正好需要drand48()...它的要求... – Shan