この記事を三行にまとめると
Pythonでモンティ・ホール問題基本バージョン
シンプルバージョン
この記事は以下の動画の中に出てきたサンプルコードを載せたものです。コピペなどが必要なときに使ってください。
動画内ではHTMLやCSSも書いていますが、ここではPython部分だけを紹介します。
動画内ではHTMLやCSSも書いていますが、ここではPython部分だけを紹介します。
基本バージョン
モンティ・ホール問題の一連の流れをそのままコードにしたバージョンです。プレイヤーが扉を選び、出題者が残りの扉のうちはずれの方を開け、プレイヤーは残った方の扉に変更するという。win = 0
count = 10000
for n in range(count):
door = ['red', 'green', 'blue']
correct = random.choice(door)
select = random.choice(door)
for d in door:
if d != correct and d != select:
door.remove(d)
break
if select == door[0]:
select = door[1]
elif select == door[1]:
select = door[0]
if select != correct:
win += 1
lose = count - win
シンプルバージョン
簡略化バージョン。最初に扉を選んだ時点で当たりかはずれか判定できるので、それだけをコード化しています。door = ['red', 'green', 'blue']
win = 0
count = 10000
for n in range(count):
correct = random.choice(door)
select = random.choice(door)
if select != correct:
win += 1
lose = count - win