Python——记__init__方法

为什么会有__init__这个方法呢?其实我们完全可以用别的方法(换一个名称)代替,但由于我们经常会用到这种定义的方法,所以就产生了__init__()这样一种系统自带的,方便自己对属性进行定义的方法,这种方法也被称为构造器(constructer)。

定义类的时候,若是添加__init__方法,那么在创建类的实例的时候,实例会自动调用这个方法,一般用来对实例的属性进行初始化。
例如:

class testClass(object):
	def __init__(self, name, gender):	
	""" 
	定义__init__方法,这里有三个参数,这个self指的是创建实例的时候的实例本身(即例子中的testman)。
	当然self也可以写成其他东西,比如me也是可以的,这样的话,下面的self.Name就要改写成me.Name。
	"""
	self.name = name # 等号左边的name是实例的属性,右边的name是方法__init__的参数,二者不同的。
	self.gender = gender # 同name
	print('hello') # 这里是为了说明在创建类的实例的时候,__init__方法就立马被调用了。 
	testman = testClass('neo', 'male')
	"""
	创建了类testClass的一个实例,类中有__init__这个方法,在创建类的实例的时候,我们需要有和__init__匹配的参数。
	由于self指的就是我们创建的实例本身,所以self是不用传入的。
	这条语句一出来,实例testman的两个属性name, gender就被赋值初始化了。其中name就是neo,gender就是male.
	"""

	class testClass2(object):
		def __init__(me, name, gender):
			me.name = name
			me.gender = gender
			print('hello2')
	testman2 = testClass2('jack', 'male')
	print(testman2.name)
	print(testman2.gender)
发布了22 篇原创文章 · 获赞 17 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/BerryNard/article/details/100655508