首页 > 解决方案 > 如何利用函数之间的返回

问题描述

我试图提示输入选项并验证输入数字。我分成两个不同的功能,我怎样才能把它变成一个功能?也许使用返回?

代码:

def again(option):
     if option == 1:
          print("one")
     elif option == 2:
          print("two")
     else:
          print("Invalid number !")
          retry = int(input("Retry number: "))
          if retry == 0:
               print("return mainpage")
          else:
               while retry > 3 and retry < 0:
                    retry = int(input("Retry number: "))
                    if retry == 0:
                         print("return mainpage")
               else:          
                    again(retry) 
def test():
     option = int(input("Please enter your choices: "))
     again(option)
test()

标签: python

解决方案


您尝试使用代码实现的目标有点令人困惑-但据我了解,您有两个选项,即 1 和 2 将停止该功能但重复输入,直到您从用户那里获得这两个数字。在这种情况下,您可以使用以下代码:

def again():
option = int(input("Please enter your choices: "))    

while True:
    if option == 1:
        return 'one'
    elif option == 2:
        return 'two'
    else:
        option = int(input("Retry number: "))

print(again())

你想运行一个while循环,直到你的条件得到满足,一旦你这样做了,你只需打破那个循环。由于我们正在返回一个值,因此您希望使用 print 语句在终端中查看该答案。


推荐阅读