看板 Python 關於我們 聯絡資訊
如題 ※※※※ ※※※※ ※※※※ ※※※※ ※※※※ ※※※※ #!/usr/bin/env python3 import random import time __7n=[] for __iter_100 in range(100): __7n.append(random.randint(0,51)) print(__7n) ※※※※ ※※※※ ※※※※ ※※※※ ※※※※ ※※※※ 同時間取100個 0-51的樣本 出來的數字很相近或相同的相鄰在一起 感覺很不隨機 random 咬時間產生? 改成下本件 ※※※※ ※※※※ ※※※※ ※※※※ ※※※※ ※※※※ #!/usr/bin/env python3 import random import time __7n=[] for __iter_100 in range(100): __77n=[] for __iter_7n in range(7): # delay x秒 # time.sleep(0.01*(random.randint(0,9))) __77n.append(random.randint(0,9)) __tick7n=0 for __iter_7mix in range(7): __tick7n+=__77n[__iter_7mix]*10**(6-__iter_7mix) __7n.append(__tick7n%52) print(__7n) ※※※※ ※※※※ ※※※※ ※※※※ ※※※※ ※※※※ 7位數(長整數?)去整除 也是出來不隨機的法則 ※※※※ ※※※※ ※※※※ ※※※※ ※※※※ ※※※※ #!/usr/bin/env python3 import random import time __7n=[] for __iter_100 in range(100): __77n=[] for __iter_7n in range(7): # delay x秒 time.sleep(0.01*(random.randint(0,9))) __77n.append(random.randint(0,9)) __tick7n=0 for __iter_7mix in range(7): __tick7n+=__77n[__iter_7mix]*10**(6-__iter_7mix) __7n.append(__tick7n%52) print(__7n) ※※※※ ※※※※ ※※※※ ※※※※ ※※※※ ※※※※ 或者插入時間間隔想拆開random可能咬時間序的規律 也是很不隨機 加大時間間隔 0.01→0.05 0.08… 除了時間變長外 看不出有變隨機的可能 還是很不隨機 random難道不了短時間量產隨機樣本嗎? 一個樣本沒問題 一百兩百個樣本就有問題 請問各位大大 如何改比較好? 純研究紙牌機率卡住 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.139.108.184 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1478603088.A.6D8.html
kerwinhui: random != evenly-spaced 11/08 19:12
Fungshui: random目前的核心是Mersenne Twister,周期很長,至少對 11/08 19:42
Fungshui: 於這小問題還是措措有餘的,你的感覺不太準確 11/08 19:44
chchwy: 數字分佈很均勻 != 隨機 11/08 20:44
JokePtt: 可是100個樣本 超過8.9個 甚至10多個都一樣 這樣算隨機? 11/08 20:55
JokePtt: 第二三個文件如果不整除52 出來的7個位數也頗怪 11/08 20:57
JokePtt: 總覺得差不多時間序出來的樣本都差不多 量產樣本有問題 11/08 20:59
CaptainH: lol 毛真多 11/08 21:07
linfox: 要不要跑一下統計確認一下隨機隨不隨機?(好饒舌) 11/08 22:38
linfox: 人對隨機的知覺還蠻不準的 XD 11/08 22:39
zeus85072: 才100個哪裡準啊 11/08 22:46
zeus85072: 跑個100萬筆以上再來看夠不夠隨機 11/08 22:46
flarehunter: 你要發牌的話要用shuffle吧?保證不重複 牌用完再 11/09 09:47
flarehunter: 重新shuffle 11/09 09:47
AmamiyaLee: https://youtu.be/DTHavqxr3sM 隨機給你參考 11/11 21:23