【发布时间】:2020-03-26 08:15:22
【问题描述】:
我正在做 Monty Hall 模拟,当我运行这些代码行时,我收到错误消息“int object is not iterable”,但我已经在使用 range 函数。后来我在一个更简单的代码上进行了尝试,该代码基本上完成了相同的工作并且运行顺利。
def run_game(n):
loss, win=0
for i in range(1,n):
switch(True)
if nagrada==odabir_vrata:
win+=1
else:
loss+=1
vjerojatnost_dobitka=100*win/(win+loss)
return vjerojatnost_dobitka
run_game(100)
TypeError Traceback (most recent call last)
<ipython-input-10-829dad26acc9> in <module>
10 return vjerojatnost_dobitka
11
---> 12 run_game(100)
<ipython-input-10-829dad26acc9> in run_game(n)
1 def run_game(n):
----> 2 loss, win=0
3 for i in range(1,n):
4 switch(True)
5 if nagrada==odabir_vrata:
TypeError: 'int' object is not iterable
【问题讨论】:
-
仔细注意箭头。它没有发生在 for 循环中
-
loss, win=0将不起作用。也许你的意思是loss = win = 0。