python的继承知识点总结


Posted in Python onDecember 10, 2018

python继承,python丰富的类因为继承而变得多姿多彩,如果语言不支持继承,那么类就没什么优势。

1、首先我们来定义两个类

一个dog类,一个bird类class Dog:    def sleeping(self):        print ('dog 正在睡觉')    def speaking(self):        print('汪汪')class Bird:    def flying(self):        print('正在飞')    def speaking(self):        print('叽叽叽')

python的继承知识点总结

2、我们先调用bird类来看看 输出结果

实例化对象,然后调用它的方法

myani=Bird()print(myani.flying(),myani.speaking())

输出

正在飞

叽叽叽

python的继承知识点总结

python的继承知识点总结

3、我们定义一个cat类来继承dog类,看看它的调用

重写speaking方法,

class Cat(Dog):  def speaking(self):    print ('喵喵')mycat=Cat()print(mycat.speaking(),mycat.sleeping())

输出:

喵喵

dog 正在睡觉

可以看出叫声变了 睡觉没变,因为我们只重写了speaking方法

python的继承知识点总结

python的继承知识点总结

4、我们在定义一个类来继承 bird类

我们不对 父类重写,而是进行扩展,子类多了方法sleeping,这也是类的优点,可以扩展

class MaoTouYing(Bird):  def sleeping(self):    print('猫头鹰白天睡觉maotouying =MaoTouYing()print(maotouying.sleeping(),maotouying.speaking(),maotouying.flying())

输出结果:

猫头鹰白天睡觉

叽叽叽

正在飞

(None, None, None)

python的继承知识点总结

python的继承知识点总结

5、下面我们来定义一个多继承

如下所示,我们不对字类进行任何扩展,或者重写,直接让它继承父类

class FlyCat(Dog,Bird):  passflycat=FlyCat()print(flycat.flying(),flycat.speaking(),flycat.sleeping())

输出结果:

正在飞

汪汪

dog 正在睡觉

(None, None, None)

python的继承知识点总结

python的继承知识点总结

6、细心的朋友注意到,以上调用都会输出 None,那是python默认都有一个返回值,我们的方法都是 print,所以默认返回None

python的继承知识点总结

7、当两个父类中有相同方法时候,调用继承的第一个父类中的方法

如步骤5中,父类都有sleeping方法,那么调用将返回第一个方法,输出‘dog 正在睡觉'

python的继承知识点总结

以上内容大家如果有还不明白的可以参考三水点靠木其他关于python继承的文章,感谢你的支持。

Python 相关文章推荐
python进阶教程之函数参数的多种传递方法
Aug 30 Python
Python同时向控制台和文件输出日志logging的方法
May 26 Python
python遍历序列enumerate函数浅析
Oct 17 Python
Python requests库用法实例详解
Aug 14 Python
Python单向链表和双向链表原理与用法实例详解
Aug 31 Python
Python3实现爬虫爬取赶集网列表功能【基于request和BeautifulSoup模块】
Dec 05 Python
Python中如何使用if语句处理列表实例代码
Feb 24 Python
Python如何应用cx_Oracle获取oracle中的clob字段问题
Aug 27 Python
Python @property及getter setter原理详解
Mar 31 Python
python和pywin32实现窗口查找、遍历和点击的示例代码
Apr 01 Python
Python可视化工具如何实现动态图表
Oct 23 Python
PyCharm2020.3.2安装超详细教程
Feb 08 Python
python退出命令是什么?详解python退出方法
Dec 10 #Python
Python3.5 处理文本txt,删除不需要的行方法
Dec 10 #Python
浅析python参数的知识点
Dec 10 #Python
Flask框架web开发之零基础入门
Dec 10 #Python
Ubuntu下升级 python3.7.1流程备忘(推荐)
Dec 10 #Python
Python操作Excel插入删除行的方法
Dec 10 #Python
Python openpyxl 遍历所有sheet 查找特定字符串的方法
Dec 10 #Python
You might like
PHP var_dump遍历对象属性的函数与应用代码
2010/06/04 PHP
PHP中文件缓存转内存缓存的方法
2011/12/06 PHP
[原创]PHP简单开启curl的方法(测试可行)
2016/01/11 PHP
利用php-cli和任务计划实现订单同步功能的方法
2017/05/03 PHP
PHP PDOStatement::fetchColumn讲解
2019/01/31 PHP
Smarty模板配置实例简析
2019/07/20 PHP
PHP Swoole异步MySQL客户端实现方法示例
2019/10/24 PHP
JavaScript入门教程(11) js事件处理
2009/01/31 Javascript
jQuery ajax cache缓存问题
2010/07/01 Javascript
jQuery 中DOM 操作详解
2015/01/13 Javascript
JQuery中DOM事件冒泡实例分析
2015/06/13 Javascript
jquery+css实现绚丽的横向二级下拉菜单-附源码下载
2015/08/23 Javascript
jQuery网页右侧广告跟随滚动代码分享
2020/04/20 Javascript
jQuery插件支持同一页面被多次调用
2016/02/14 Javascript
js省市县三级联动效果实例
2020/04/15 Javascript
JavaScript动态添加css样式和script标签
2016/07/19 Javascript
JS基于递归算法实现1,2,3,4,5,6,7,8,9倒序放入数组中的方法
2017/01/03 Javascript
浅谈angular4生命周期钩子
2017/09/05 Javascript
浅谈vue的props,data,computed变化对组件更新的影响
2018/01/16 Javascript
vue代理和跨域问题的解决
2018/07/18 Javascript
如何在Vue.js中实现标签页组件详解
2019/01/02 Javascript
微信小程序实现简易table表格
2020/06/19 Javascript
小程序如何构建骨架屏
2019/05/29 Javascript
ES6模板字符串和标签模板的应用实例分析
2019/06/25 Javascript
layer.open弹层查看缩略图的原图,自适应大小的实例
2019/09/05 Javascript
[02:57]2014DOTA2国际邀请赛-观众采访
2014/07/19 DOTA
python中的lambda表达式用法详解
2016/06/22 Python
浅谈pyhton学习中出现的各种问题(新手必看)
2017/05/17 Python
Python使用time模块实现指定时间触发器示例
2017/05/18 Python
numpy中以文本的方式存储以及读取数据方法
2018/06/04 Python
Django后台管理系统的图文使用教学
2020/01/20 Python
Python3.9又更新了:dict内置新功能
2020/02/28 Python
python脚本和网页有何区别
2020/07/02 Python
欢迎横幅标语
2014/06/17 职场文书
2015大学生党员自我评价范文
2015/03/03 职场文书
培训通知书模板
2015/04/17 职场文书