Python回归麻烦

时间:2016-03-16 16:10:31

标签: python function return

有人可以解释一下我做错了吗?

我的代码是x not defined。我要做的是在x中获取add1的结果并将其传递给doub函数。我尽可能地搜索并阅读了这篇文章,我知道我遗漏了一些东西,所以请指出我正确的方向。

def main():
    value = (int)(input('Enter a number '))
    add1(value)
    doub(x)

def add1(value):
    x = value + 1
    return x


def doub (x):
    return x*2

main()

2 个答案:

答案 0 :(得分:2)

x仅存在于add1函数中。您的所有main函数都知道从调用add1返回的,而不是之前存储的变量的名称。您需要将该值赋给变量,并传递给它进入doub

result = add1(value)
doub(result)

另请注意,Python不是C;没有类型转换这样的东西。 int是一个您调用值的函数:

value = int(input('Enter a number '))

答案 1 :(得分:0)

试试这个:

def main():
    value = int(input('Enter a number '))
    #This is more pythonic; use the int() function instead of (int)         
    doub(add1(value))

def add1(value):
    x = value + 1
    return x


def doub (x):
    return x*2

main()