人工智能/模式识别/机器学习精华专题大数据,机器学习,人工智能呆鸟的Python数据分析

Python札记34_继承(待更新)

2019-07-07  本文已影响0人  皮皮大

面向对象编程OOP有以下三个特征,本篇札记中主要讨论继承的知识点:


继承

概念

继承是面向对象设计中一个重要的概念。如果一个类A继承自另一个类B,则称B是A的父类或者超类,或者A是B的子类

继承可以使得子类具有父类的属性和方法,不再需要重新编写方法。同时,子类还可以重新定义自己的属性和方法,或者重新写某些方法,即覆盖掉父类的属性和方法,继承的特点:

Python中由于存在Duck Type,接口定义的重要性被降低了,继承的作用也被大大降低。

单继承

单继承就是指只从一个父类那里继承,即只有一个父类。通过一个简单的例子来了解继承:

class A:
    pass

class B(A):   # B继承自A
    pass
B.__base__   # 类的特殊属性__base__:查看一个类的父类
image.png

通过一个例子来真正了解下继承:

import random   # 导入随机模块

class A:    # 定义一个A类
    def __init__(self, number):   # 初始化函数,传入参数number
        num = random.randint(1, 101)  # 在1到101之间生成一个随机数
        if num > number:    # 判断传入参数和随机数的大小
            print("{} is bigger than number".format(num))
        else:
            print("{} is smaller than number".format(num))

class B(A):   # B继承自A
    pass

res = B(50)   # 因为B继承了A类,A类需要传入参数,此处直接给B类传入了参数50
image.png image.png
上一篇 下一篇

猜你喜欢

热点阅读