3
我參與了一個python應用程序,它將在Mac和Windows上運行,並與py2app和py2exe一起打包成可執行文件。所有應用程序始終生成相同的隨機數是非常重要的。所以隨機模塊總是獲得相同的種子。播種python隨機在Mac和Windows上產生不同的數字
然而,random.shuffle()的結果在Mac上是非常不同的。
有什麼辦法可以確保始終生成相同的隨機數字嗎?
代碼很令人掃興:
import random
random.seed("ladygaga")
swaplist_odd = [n for n in range(len(clipboard)) if n % 2 != 0]
swaplist_even = [n for n in range(len(clipboard)) if n % 2 == 0]
random.shuffle(swaplist_odd)
random.shuffle(swaplist_even)
的想法是重新洗牌的緩衝器,並且能夠通過重新洗牌,以重建原始的緩衝區。
如果進程停留在一個操作系統內,則沒有問題。只要緩衝區文件被複制到另一個操作系統,原始文件的重新創建就會失敗。
你正在使用哪些版本的Python? – dckrooney
也許你在兩臺機器上有不同版本的Python?比較哈希(「ladygaga」)兩個,他們是一樣的嗎? –
顯然,Mac OS和Windows對ladygaga有不同的意見。 –