簡體   English   中英

python中的random.sample被重復生成序列的概率是多少?

[英]What is the probability of the generated sequence by random.sample in python being repeated?

我使用以下代碼片段生成隨機字符

char_set = string.ascii_letters + string.digits
Randomno=''.join(random.sample(char_set*10,9))

唯一值的總數應為62 ^ 9(1.3537087e + 16)

符號數^長度。

“用於無需替換的隨機抽樣”,因此我之前的數學不正確,因為字符不能在給定的樣本中重復。

在62 ^ 9次運行后匹配任何序列的機會是100%,匹配特定序列的機會傾向於,但是隨着運行次數的增加,從未達到100%,因為您永遠無法保證獲得任何特定序列。

從評論中添加我的想法:

隨機使用marsenne twister: http//en.wikipedia.org/wiki/Mersenne_Twister ,根據其維基頁面非常強大。 http://docs.python.org/3.1/library/random.html根據文檔隨機不應該用於加密目的。 這是有道理的,因為MT是完全確定的並且給出初始參數並且看到可以再現相同的序列。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM