Python 如何使用函数更改变量的值?
如何使用函数更改变量的值并永久存储它。 尝试了下面的代码,但它不会改变变量的值Python 如何使用函数更改变量的值?,python,python-2.7,Python,Python 2.7,如何使用函数更改变量的值并永久存储它。 尝试了下面的代码,但它不会改变变量的值 n=2 def f(x): x+=2 return x f(n) print n #the output is 2 instead of 4 I want 将变量视为值的标签,n正在标记2,如果希望n标记f函数的值,只需再次标记它: n=2 def f(x): x+=2 return x n = f(n) print n 这就是函数应该如何使用。它们接收作为参数的值并返回新
n=2
def f(x):
x+=2
return x
f(n)
print n #the output is 2 instead of 4 I want
将变量视为值的标签,
n
正在标记2
,如果希望n标记f
函数的值,只需再次标记它:
n=2
def f(x):
x+=2
return x
n = f(n)
print n
这就是函数应该如何使用。它们接收作为参数的值并返回新值。何时/何地/如何分配给变量是调用者的问题,因为变量在调用者的作用域中
如果您想要“自我修改”,类可能是更好的选择:
class Foo:
def __init__(self, n):
self.n = n
def inc(self):
self.n += 2
f = Foo(2)
f.inc()
print(f.n)
class Foo:
def __init__(self, n):
self.n = n
def inc(self):
self.n += 2
f = Foo(2)
f.inc()
print(f.n)