python定制类是什么?怎么用?
大家是不是和小编一样,非常喜欢重庆的美食,重庆人说话呢?那有没有小伙伴会想到,小编今天居然要结合现实生活中的例子,给大家展示一个非常实用的代码示例,下面就以重庆为主题,教大家如何定制python的类,一起来看下吧~
一、类的定制
创造(属于自己)的属性或方法,如籍贯开头是重庆市(属性)、会说重庆话(方法)。
上面的操作,都可以说是重庆人在继承的基础上又做了定制。
同样,子类也可以在继承的基础上进行个性化的定制。
包括:
l 创建新属性、新方法。
l 修改继承到的属性或方法。
简而言之:类的定制,不仅可以让子类拥有新的功能,还能让它有权修改继承到的代码。
二、定制,新增代码
来个例子:
class Chinese: eye = 'black' hair = 'black' def eat(self): print('吃饭,选择用筷子。') class Chongqing_people(Chinese): # 类的继承 place = '重庆' # 类的定制 def speak(self): # 类的定制 print('我会讲重庆话。') zhenxiaofan = Chongqing_people() print(zhenxiaofan.eye) print(zhenxiaofan.hair) # 父类的属性能用 print(zhenxiaofan.place) # 子类的定制属性也能用 zhenxiaofan.eat() # 父类的方法能用 zhenxiaofan.speak() # 子类的定制方法也能用 终端显示 black black 重庆 吃饭,选择用筷子。 我会讲重庆话。
一、定制,重写代码
重写代码,是在子类中,对父类代码的修改。
来个例子:(普通话的“玩”,在重庆话里是“耍”)
# 原代码 class Chinese: def __init__(self, place = '中国', do = '玩'): self.place = place self.do = do def greet(self): print('你好!欢迎到%s来%s。' % (self.place, self.do)) zhenxiaofan = Chinese() zhenxiaofan.greet()
# 提示:初始化方法的定制,和一般的实例方法的定制是一样的。 # 进行继承和定制后代码 class Chinese: def __init__(self, place = '中国', do = '玩'): self.place = place self.do = do def greet(self): print('你好!欢迎到%s来%s。' % (self.place, self.do)) class Chongqing_people(Chinese): def __init__(self, place = '重庆', do = '耍'): Chinese.__init__(self, place, do) zhenxiaofan = Chongqing_people() zhenxiaofan.greet() 终端显示 你好!欢迎到中国来玩。 # 原代码的显示 你好!欢迎到重庆来耍。 # 定制代码的显示
这便是定制:在复用代码的基础上,又能满足个性化的需求。
类的继承和定制,从某个角度来看,和人类的发展史很像:每一代人都站在了上一代人的肩膀上,在“继承”了上一代的的同时,又“定制”出专属这一代的发展。可以说:我们今天所享受到的便利和乐趣,来源于一代又一代的人的传承和创新。
总结:
1. 类的继承,节省了很多的时间,基于父类基础的属性方法,进行小的修正改变而满足新的功能,这里利用类的继承与重写是很方便的。
2. 不要被局限住,孩子虽然长得像爸爸但是还是可以有不一样的地方,父子之间的关系可以很好的诠释理解子类的继承与重写,需要灵活应用。
3. 子类继承父类,抄写下来要修改的方法,然后修改方法内部的具体代码即可。
好了,以上就是关于python定制类的全部内容了哦~如需了解更多python实用知识,点击进入云海天Python教程网。
来源:PY学习网:原文地址:https://www.py.cn/article.html