还是来说class,什么鬼,类会生宝宝
呵呵,说的是类的继承:
先看代码:
class yeye: #爷爷 def __init__(self): print('我是爷爷') class baba(yeye): #爸爸 def __init__(self): yeye() print('我是爸爸') class me(baba): #我 def __init__(self): baba() print('我是孙子') if __name__ =='__main__': a=yeye() print('-'*20) b=baba() print('-'*20) c=me() print('-'*20)
简单的说,类的继承就是在类中包含其他的类,这里写了3个class——“爷爷”、“爸爸”、“我” 。class“我” 里面包含爸爸和爷爷的基因,一般的方法就是在me这个类中写出爷爷和爸爸的特点,如果用了类的继承,那就简单了:
1、先写出爷爷的特点。
2、再写出爸爸的特点,注意,这里只要写和爷爷不一样的地方,一样的特点就不用重新写。
3、最后写我的特点,也只要写出不同于爷爷和爸爸的地方就可以了。
如果要想把祖孙三代的特点都列出来,那么只有调用me就可以了。
class yeye: def __init__(self): pass def funcyeye(self): print ("我是爷爷,会骑自行车!" ) class baba(yeye): def __init__(self): yeye.__init__(self) def funcbaba(self): print ("我是爸爸,会开汽车" ) class me(baba): def __init__(self): baba.__init__(self) def funcme(self): print ("我是孙子,会开飞机" ) print("我有什么本领:\n -------------") DNA = me() DNA.funcyeye() DNA.funcbaba() DNA.funcme()
因为可以继承,所以,只要实例化“me”类,就可以调用三个类中所有的方法了。是不是很爽啊。以后写class啊,千万不要写成“八宝粥”哦。