Python如何使函数参数全局化?

2024-06-16 14:24:12 发布

您现在位置:Python中文网/ 问答频道 /正文

例如,我想调用一个函数LSE(n)。 一旦我调用LSE(5),我希望n可以被其他函数作为5调用。我尝试在LSE中嵌套访问n的其他函数,但它也不能访问n。在


Tags: 函数lse
2条回答

在函数之间,这可以通过global关键字来实现。这种方法通常不受欢迎。在

n = 0
def LSE(value):
    global n
    n = value

def second_func():
   global n
   print(n)

尝试一下:

^{pr2}$

如果你想在函数之间共享值,我可以建议把它们封装在一个类中吗?在

“有没有什么方法可以在不改变名字的情况下做到全球化?一、 e.我想把我的参数设为一个全局变量,并保留相同的名称(与这里的value和n的命名不同)”

发件人:How to get the original variable name of variable passed to a function

“不能。它在传递给函数之前要求值。你所能做的就是把它作为一个字符串传递。”

可行的方法是让代码始终使用特定的变量名,并在函数中声明它为全局变量。这样,您甚至不需要将其作为参数传递,但每次使用该函数时,它都会受到影响;例如:

def test_function ():

    global N

    N = N + 1

    print (N)

N = 5

test_function()
test_function()
test_function()

6 7 8

相关问题 更多 >