严格讲应该是“通过函数调用,改变引用对象”。python中,要区分“变量名“和”对象“
如果是类的对象,是引用类型的,那么可以通过函数调用,来改变它的值:
# coding:utf-8
class Zhuo:
def __init__(self):
self.a=1
def inner_add(self):
self.a=self.a+1
def inner_print(self):
print 'self.a的取值为:', self.a
def play_for_fun(zz):
zz.inner_add()
if __name__ == '__main__':
zz = Zhuo()
zz.inner_print()
play_for_fun(zz)
zz.inner_print()
运行结果:
self.a的取值为: 1
self.a的取值为: 2
如果是基本类型的变量,则这种方式不能改变变量的值。