连续语句如何在功能中起作用?

时间:2019-07-05 06:25:33

标签: python

我正在建立科学计算器。执行完操作后,询问您是否要返回主菜单或退出

def Again():
    x=input ("Go back to main menu(Y/N)")
    if (x=='Y') or (x=='y'):
        continue
    else:
        break

当用户按下y时,返回主菜单,否则退出

2 个答案:

答案 0 :(得分:1)

您无法在函数中使用breakcontinue,请阅读tutorial

相反,您可以在主循环中使用check,并且您的函数必须返回TrueFalse

def Again():
    x=input ("Go back to main menu(Y/N)")
    if (x=='Y') or (x=='y'):
        return True
    else:
        return False

while True:  # your main loop

    # some other code
    # check on exit
    if Again():
        continue
    else:
        break

答案 1 :(得分:0)

这可以工作!

class Cal:
    def main_menu(self):
        print ("I am in main menu")

    def again(self):
        x = raw_input("Go back to main menu(Y/N)")
        if x == 'y':
            self.main_menu()


if __name__ == '__main__':
    c = Cal()
    c.again()

当您输入y时,它将进入主菜单。 另外,继续和中断在这里均无效,因为它们都在循环中应用。 您可以使用raw_input代替input,因为input不接受string的值。