蒙特卡罗——三门问题python代码实现

三门问题


b站李永乐老师讲解三门问题

python蒙特卡罗模拟

python 复制代码
#模拟三门问题
import random as rd
#n:模拟次数,m:中奖次数
n=100000
m=0
for i in range(n):
     #车位于的门号
   car=rd.randint(0,2)
   #人随机选择一个门
   door=rd.randint(0,2)
   #主持人展示空门
   empties={0,1,2}-{car,door}
   empty=rd.choice(list(empties))
   #换另一扇门
   choose=({0,1,2}-{door,empty}).pop()
   #判断是否中奖
   if choose==car:
       m+=1
p=m/n
print(f'中奖概率:{float(p):.2f}')

运行结果稳定在0.67,理论概率2/3

相关推荐
阿俊仔(摸鱼版)几秒前
Python 常用运维模块之Shutil 模块
linux·服务器·python·自动化·云服务器
MarsBighead3 分钟前
(二)PosrgreSQL: Python3 连接Pgvector出错排查
python·postgresql·向量数据库·pgvector
可涵不会debug7 分钟前
C语言文件操作:标准库与系统调用实践
linux·服务器·c语言·开发语言·c++
深蓝海拓23 分钟前
Pyside6(PyQT5)中的QTableView与QSqlQueryModel、QSqlTableModel的联合使用
数据库·python·qt·pyqt
无须logic ᭄31 分钟前
CrypTen项目实践
python·机器学习·密码学·同态加密
百流43 分钟前
scala文件编译相关理解
开发语言·学习·scala
Channing Lewis44 分钟前
flask常见问答题
后端·python·flask
Channing Lewis1 小时前
如何保护 Flask API 的安全性?
后端·python·flask
水兵没月2 小时前
钉钉群机器人设置——python版本
python·机器人·钉钉