MyException - 我的异常网
当前位置:我的异常网» 编程 » Python编程系列课程第14讲——继承

Python编程系列课程第14讲——继承

www.MyException.Cn  网友分享于:2013-09-10  浏览:1次
Python编程系列教程第14讲——继承

分享知识,分享快乐,收获友谊,收获财富!

大家好,我是数字雨,QQ:798033502

http://itbook.taobao.com/

今天给大家带来的教程是《Python编程系列教程第14讲——继承》

我这个教程最开始是以《Python3程序开发指南》为教材进行录制的,因此就有很多朋友过来问我还有没有这本书。让大家失望的是现在很多地方都缺货。不过还好有电子版的,今天我会打包到教程中。

另外:中秋佳节来临之际,Python编程系列教程1-15讲全部免费看。我将把这1-15课重新上传一次,最新的下载地址课后会在我的新浪博客http://blog.sina.com.cn/xi4oyu公布。想跟我博客做友情链接的朋友,只要在我的博客留言,我基本上来着不拒。

好了,下面我们言归正传,一起学习下本节课的内容。说到继承这个概念,其实大家并不陌生。在我们现实生活中就有很多继承的例子,比如子承父业。再比如哺乳动物,他们的主要特征有:体表有毛、头、颈、躯干、四肢和尾五个部分;用肺呼吸;体温恒定;大脑较发达;哺乳;胎生。我们人类属于哺乳动物,因此我们人类就继承了哺乳动物的这些特征,同时我们人类也有自己的特征。那么在我们Python中,一个新类可以通过继承来获得已有类的方法和属性。被继承的类我们称之为父类。继承类我们称之为子类。通过继承而来的类也可以自己定义新的方法和属性。

python在类名后用一对圆括号表示继承关系, 括号中的类表示父类,如果父类定义了__init__方法,则子类必须显示地调用父类的__init__方法,如果子类需要扩展父类的行为,可以添加__init__方法的参数。我们来看下面这个例子:

classAnimal:

    __blood='2500ML' #私有属性

    def __init__(self,height,weight):

        self.height=height

        self.weight=weight

    def speek(self):

        print("speek")

    def run(self):

        print("run")

    def __fly(self): #私有方法

        print("fly")

 

classPeople(Animal):

    def __init__(self,height,weight,name): #添加name属性

        Animal.__init__(self,height,weight) #显示调用父类的__init__方法

        self.name=name

        print("I Am{0}".format(self.name))

 

 

if__name__=='__main__':

    p=People('170','50','jack')

    #父类的私有成员不能被子类调用

    #print(p.__blood)  #(错误的写法)

#p.__fly()        #(错误的写法)

 

继承的好处之一就是提供代码的重用性,在Python中是支持多重继承的。多重继承是指创建的类拥有几个类的属性和方法。即一个子类可以有多个父类。在类名后面的圆括号中包含多个父类名,父类名以逗号隔开。比如我们创建一个Man这个类,即继承自Animal类也继承自People,代码如下:

classMain(People,Animal):

    def__init(self,height,weight,name):

        Animal.__init__(self,height,weight)

       People.__init__(self,height,weight,name)

        print("我是男人")

注意:多继承中如果同时继承父类和父类的父类(爷爷类),那么要把父类写在爷爷类前面,否则会报错。

文章评论

为什么程序员都是夜猫子
为什么程序员都是夜猫子
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
写给自己也写给你 自己到底该何去何从
写给自己也写给你 自己到底该何去何从
总结2014中国互联网十大段子
总结2014中国互联网十大段子
5款最佳正则表达式编辑调试器
5款最佳正则表达式编辑调试器
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
程序员的鄙视链
程序员的鄙视链
编程语言是女人
编程语言是女人
程序员都该阅读的书
程序员都该阅读的书
什么才是优秀的用户界面设计
什么才是优秀的用户界面设计
团队中“技术大拿”并非越多越好
团队中“技术大拿”并非越多越好
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
程序员周末都喜欢做什么?
程序员周末都喜欢做什么?
做程序猿的老婆应该注意的一些事情
做程序猿的老婆应该注意的一些事情
一个程序员的时间管理
一个程序员的时间管理
如何成为一名黑客
如何成为一名黑客
程序员必看的十大电影
程序员必看的十大电影
 程序员的样子
程序员的样子
每天工作4小时的程序员
每天工作4小时的程序员
聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
漫画:程序员的工作
漫画:程序员的工作
那些争议最大的编程观点
那些争议最大的编程观点
Java程序员必看电影
Java程序员必看电影
鲜为人知的编程真相
鲜为人知的编程真相
初级 vs 高级开发者 哪个性价比更高?
初级 vs 高级开发者 哪个性价比更高?
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
60个开发者不容错过的免费资源库
60个开发者不容错过的免费资源库
代码女神横空出世
代码女神横空出世
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
“肮脏的”IT工作排行榜
“肮脏的”IT工作排行榜
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
我的丈夫是个程序员
我的丈夫是个程序员
老程序员的下场
老程序员的下场
中美印日四国程序员比较
中美印日四国程序员比较
程序员应该关注的一些事儿
程序员应该关注的一些事儿
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
我是如何打败拖延症的
我是如何打败拖延症的
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有