python通过函数改变变量取值

严格讲应该是“通过函数调用,改变引用对象”。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

如果是基本类型的变量,则这种方式不能改变变量的值。

原文地址:https://www.cnblogs.com/zjutzz/p/6145686.html