我一直在研究一个代码,在这个代码中我必须编写一个程序来模拟当鼠标进入厨房时发生什么事,当陷阱被设置并且没有设置时,它应该以多行输入读取,这描述厨房里发生的事情。Python理解错误
如果行设置陷阱。被输入,然后鼠标陷阱变成诱饵。如果行鼠标!被输入时,程序应该打印鼠标发生了什么。如果陷阱已设置,请打印Trap !.如果没有设置陷阱,则输出鼠标逃逸。对于所有其他输入行,该程序不应该执行任何操作。因为它应该保持从用户读取行直到用户输入空白行。一旦鼠标陷入陷阱中,陷阱不能用于捕捉另一只鼠标,除非它已被重置。
所以我制作了程序,但它不适用于“鼠标逃脱”。任何人都可以请引导我通过看我的代码:
a = raw_input("Enter line: ")
space = ""
trap_set = True
while a != space:
a = raw_input("Enter line: ")
if 'Set the trap.' in a:
trap_set = True
print "Trap!"
else:
if 'Mouse!' in a:
trap_set = True
print "The mouse escaped."
我想我的程序是这样运行的:
Enter line: Go to the fridge.
Enter line: Set the trap.
Enter line: Go to bed.
Enter line: Mouse!
Trap!
Enter line:
OR
Enter line: Make some dinner.
Enter line: Wash the dishes.
Enter line: Mouse!
The mouse escaped.
Enter line: Sweep the floor.
Enter line: Set the trap.
Enter line: Mouse!
Trap!
Enter line: Go to bed.
Enter line:
,这有什么,我不能工作出。
你需要描述什么不起作用:你想要发生什么,以及发生了什么? (我注意到的第一件事是你有变量'trap_set'有点奇怪,但从来没有把它设置为True。) – BrenBarn
设置你的标志是你的主要问题。 – tijko