如何在Python中的另一个函数中获取我的变量?

时间:2016-04-10 04:09:27

标签: python recursion

这是我的代码

def main():
    getNumber()
    recursive(x)


def getNumber():
    x = int(input("Enter a number for 'x': "))
    return x



def recursive(x):
    print (x)




main()

我们说我输入的数字是' x'在getNumber函数中。相同的数字不会打印在递归函数上。有什么问题?

之后,我需要制作一个递归乘法函数,但这将是另一天。有人可以帮忙吗?

4 个答案:

答案 0 :(得分:2)

xgetNumber内的局部变量,因此当您致电recursive(x)时,它不知道x是什么。

相反,

  • 设置x = getNumber()然后将其传递给

  • 直接传递,如recursive(getNumber())

答案 1 :(得分:0)

将以下内容添加到代码

   x = getNumber()

答案 2 :(得分:0)

您需要将函数设置为等于变量以捕获return语句:

def main():
    x = getNumber()
    recursive(x)

getNumber()只需允许main()方法在完成后访问该变量。您可以正确地“捕获”该变量并使用它。

可以把它想象成文本“getNumber()”被替换为你要返回的变量。这有点澄清吗?

答案 3 :(得分:0)

这会有效!!

def main():
    getNumber()
    recursive(x)


def getNumber():
    global x
    x = int(input("Enter a number for 'x': "))
    return x



def recursive(x):
    print (x)




main()