在Python 2 documentation of the random.seed()
功能的我發現了一個警告:再現隨機數(Python的2 /隨機)
如果哈希的對象給出的,確定性的結果僅保證 當PYTHONHASHSEED被禁用。
從https://docs.python.org/2/using/cmdline.html#envvar-PYTHONHASHSEED我推斷-R
開關解釋器可以具有類似的效果PYTHONHASHSEED
。
我已經驗證經驗證明,用小整數接種的隨機數似乎是可重現的。那麼做小整數的散列。
但是,int
是可散列的。是否在任何可信來源中明確表示,將其用作可重複序列隨機數的種子是安全的?
與Reproducibility of python pseudo-random numbers across systems and versions?相比,在同一系統和解釋器內的重現性就足夠了。
我會考慮一個文檔缺陷;應該說,整數和長整數不會被散列。無論如何,Python 2的實現在這一點上不太可能改變,並且[Python 3文檔](https://docs.python.org/3/library/random.html#random.seed)提到了int( Python 2 longs)直接使用。 – user2357112