我遇到python中的if语句问题。我正在做一个游戏"完全在dolan说话,原谅拼写,它意味着幽默的方式。遗憾。
以下是代码:
import time
def menu():
print ("dogz r a supar hahrd tin 2 matsr it tak yrs 2 mastr ut u nw git 2 exprince it. pik a tin 2 du:\n")
menu = raw_input("1.)Ply Da Dogi gam\n2.)Halp\n")
if menu == 1:
game()
if menu == 2:
helpGame()
if menu < 2:
print ("dat not 1 ur 2 sry")
time.sleep(1)
menu()
def game():
print ("nuw u ply mi gme u lke it")
def helpGame():
print ("dis da halp u liek it")
menu()
这对我不起作用,我从未在if语句中直接调用函数,而且我必须实现&#34; seg-ways&#34;它调用了函数。
这对你们任何人都有用吗?它可能是我的Python安装吗?谢谢!
答案 0 :(得分:2)
随着您添加更多选项,if
语句变得笨拙。试试这个基于字典的结构。
def menu():
print ("dogz r a supar hahrd tin 2 matsr it tak yrs 2 mastr ut u nw git 2 "
"exprince it. pik a tin 2 du:\n")
prompt = "1.)Ply Da Dogi gam\n2.)Halp\n"
{'1': game, '2': helpGame}.get(raw_input(prompt), menu)()
答案 1 :(得分:1)
raw_input()
返回一个字符串,你在if语句中使用了一个数字,改变这一行:
menu = raw_input("1.)Ply Da Dogi gam\n2.)Halp\n")
到此:
menu = int(raw_input("1.)Ply Da Dogi gam\n2.)Halp\n"))
您可能希望下一步处理错误情况。