如何为函数的返回值分配全局变量?

时间:2019-04-08 21:13:43

标签: python function

如何为函数的返回值分配全局变量?我似乎能够使其正常工作的唯一方法是将变量分配给函数本身。当我运行代码时,变量赋值在那一行上执行功能,这不是我想要的。我只想要一个赋值,以便以后可以使用该变量。

def random_function():   
    x = 3.14    
    return x

这是我想发生的事情,但不起作用:

pi = x

这有效,但是在控制台上的那一行上运行了我不想要的功能:

pi = random_function() 
print(pi)

3 个答案:

答案 0 :(得分:0)

如果您在函数内部,但想为全局变量分配新值,则必须先声明全局变量。否则,标识符将被认为是局部变量。我的意思是这样:

pi = -1   # declare your global

def random_function():
    global pi
    x = 3.14
    pi = x  # now works, after the `global` line above
    return x

答案 1 :(得分:0)

如果我理解正确,您想将函数的返回值分配给变量吗?

x = random_function()

我认为这就是您编写它的方式。您可以使用所需的任何变量。

答案 2 :(得分:0)

您已经回答了您的问题。要将全局变量分配给函数的返回值,只需将变量分配给函数的调用;

def random_function():   
    x = 3.14    
    return x

pi = random_function()

如果要查看pi的值,可以在控制台中打印pi。不需要。