如何在python中使用函数时更改参数的全局值



这就是我想要达到的效果

Variable=0
Some_function(Variable)
print (Variable)

我想要输出1(或其他,但0)

我尝试使用全局通过定义some_function这样,但它给了我一个错误名称'变量'是参数和全局';

def Some_function(Variable):
x=Variable+1
global Variable
Variable=x

您正在使用变量作为全局变量和函数参数。

试题:

def Some_function(Var):
x=Var+1
global Variable
Variable=x
Variable=0
Some_function(Variable)
print (Variable)

你不应该使用相同的参数和整体变量名称

错误信息似乎足够清晰。此外,如果使用全局变量,则不需要将Variable作为参数传递。

如果你定义了

def f():
global x
x += 1

那么下面的脚本不应该输出错误:

x = 1 # global
f(x)
print(x) # outputs 2

另一种可能:

def f(y):
return y+1

可以这样使用:

x = 1
x = f(x)
print(x) # 2

如果你想修改全局变量,你不应该使用该名称作为函数参数。

var = 0
def some_func():
global var
var += 1
some_func()
print(var)

只需使用global关键字并修改您喜欢的变量。

Variable = 0
def some_function(Variable):
global x
x = Variable + 1
some_function(Variable)
Variable = x
print(Variable)

相关内容

  • 没有找到相关文章

最新更新