python 3将值从函数传递给main

时间:2012-03-20 16:37:47

标签: python function python-3.x

我仍然是python3的新手,可以使用一点帮助 我希望变量a打印出来,显示以下代码中的圆圈区域

from math import pi

def area(r):
    a = pi * r**2
    return a

if __name__ '__main__':
    r = int(input("Enter the Radius: "))
    area(r)
    print(a)

现在我知道a未定义,如果我将其定义为全局变量并将其赋予0 它不能回报我想要的东西 所以我的问题是如何解决这个问题,我确定它的确非常简单

提前致谢

1 个答案:

答案 0 :(得分:4)

执行:

a = area(r)

变量aarea()函数内的局部变量,因此您无法在其外部使用变量。但是,由于您返回值,无论您在何处调用area(r),这是一个表达式,其值是函数内部返回的值,因此它将计算为原始a

当您键入a = area(r)时,您将为a提供一个名为area(r)的新局部变量,该值是您在函数内传递给return的值。您也可以这样做:

r = int(input("Enter the Radius: "))
print(area(r))