我正在考虑模拟Monty Hall问题,说实话,到目前为止我还没有得到。我的代码如下:
import random
doors = {"a":"false", "b":"false", "c":"false"}
doors[random.choice(list(doors.keys()))] = "true"
del doors[random.choice(list(doors.values()))]
print(doors)
我现在的问题是在第四行上,我试图删除一个值为'false'的随机门。我的问题是我不知道如何指定我只想从值'false'的列表中随机选择。
有什么想法吗?我环顾四周,但找不到解决方案。这是我的第一篇文章,对不起,如果我在某个地方搞砸了!
(我使用的是Python 3,而不是2)
答案 0 :(得分:1)
您可以使用列表理解
del doors[random.choice([k for k,v in doors.items() if v == 'false'])]