如何在将成为该函数变量的函数中进行输入?

时间:2019-07-19 15:15:39

标签: python function

我正在尝试创建一个函数,如果不是整数,则允许我循环遍历用户输入,如果是整数,则中断。此处,每次调用函数时,将采用输入的变量不能相同。

def intry():
    global a # intry(b) should change global a to global b
    while True:
        try:
            a = int(raw_input())  # intry(b) should do b = int(raw_input())
        except ValueError:
            print 'Try again'
        else:
            return a  # expecting return b


intry()

intry()

print a + a  # then i can print a + b

正如您可能通过上述代码的注释所理解的那样,函数中的输入实际上并不会改变结果,而是会改变变量。如果未提供任何输入,则变量应为'a'或默认情况下为

1 个答案:

答案 0 :(得分:0)

您正在调用函数,但没有存储或使用该函数的结果,我真的想对您的代码进行处理,您可以像这样:

print (intry()+intry())

或:

a = intry()
b = intry()

print (a + b)

输出:

23
4
27

完整代码:

def intry():
    while True:
        try:
            a = raw_int(input("enter number:"))
        except ValueError:
            print ('Try again')
        else:
            return a

print (intry()+intry())

输出:

enter number:3
enter number:4
7