【发布时间】:2019-04-03 19:07:35
【问题描述】:
这是我为 CS 课程制作的文字冒险游戏的一小部分。您正在探索一所房子,并通过告诉游戏您要向北、向南、向东还是向西来导航它。
因此,我想添加一些内容来告诉您,当您输入了无效输入时,如果您拼错了 Nroth、Suoth、Eas 或 Weast 之类的单词之一。这些只是示例,但希望您知道我的意思,只要它与北、南、东或西不完全匹配。
我将如何在这部分代码中做到这一点?
我做了一个错误示例,如果您犯了“elif room ==”porch”的拼写错误,我想输出的错误,但它应该继续询问您想去哪个方向,即使您收到该错误因为到目前为止,它会继续询问您想去哪个方向,并且无论您输入什么,它都不会根据您进入的房间输出应该说的文本。
def pickRoom(direction, room):
if(direction == "quit") or (direction == "exit"):
print("Better luck next time!")
return "Exit"
elif room == "Porch":
if direction == "North":
return "Pantry"
else:
print("That is not a valid entry!")
elif room == "Pantry":
if direction == "North":
return "Kitchen"
elif direction == "East":
return "DiningRoom"
elif room == "DiningRoom":
if direction == "West":
return "Pantry"
elif room == "Kitchen":
if direction == "West":
return "LivingRoom"
elif direction == "East":
return "Bedroom"
elif room == "Bedroom":
if direction == "West":
return "Kitchen"
elif room == "LivingRoom":
if direction == "West":
return "Bathroom"
elif direction == "North":
return "Stairs"
elif room == "Bathroom":
if direction == "East":
return "LivingRoom"
elif room == "Stairs":
if direction == "South":
return "Bar"
elif room == "Bar":
if direction == "East":
return "Shop"
elif room == "Shop":
if direction == "North":
return "Closet"
elif direction == "South":
return "Storage"
elif room == "Storage":
if direction == "North":
return "Shop"
elif room == "Closet":
if direction == "South":
return "Shop"
如果您需要更大的代码部分甚至整个 .py 文件,请告诉我,谢谢。
【问题讨论】:
-
请创建一个minimal reproducible example,其中包含调用所示函数的循环。