python之继承及其实现方法
目录
继承
语法格式
class 子类类名(父类1, 父类2...):
pass
r如果一个类没有继承任何类,则默认继承object
python支持多继承
定义子类时,必须在其构造函数中调用父类的构造函数
这之间的继承关系就如同血缘继承一般

继承的代码实现
class Farther(object): # 这里的object可写可不写,不写就默认为object
def __init__(self, name, age):
self.name = name
self.age = age
def put_1(self):
print(self.name, self.age)
class Me(Farther):
def __init__(self, name, age, university):
super().__init__(name, age)
self.grade = university
class Brother(Farther):
def __init__(self, name, age, grad):
super().__init__(name, age)
self.grad = grad
我们现在来看看我们创建的这个结构是什么样的

然后我们来创建Me和Brother的对象
sws_1 = Me('慢蜗牛', 20, '大二')
sws_2 = Brother('小蜗牛', 17, '高二')
sws_1.put_1()
sws_2.put_1()
#结果如下
慢蜗牛 20
小蜗牛 17
那我们这里就可以看到,sws_1和sws_2分别在Me和Brother中继承了Farther的名字、年龄还有方法
最后再通过父类的方法来打印名字与年龄
至于怎么打印年级,大家可以仿照put_1来添加代码实现,动起小手试试啦
多继承
一个子类继承多个父类的继承称为多继承
class A(object):
pass
class B(object):
pass
class C(A, B):
pass
python之继承及其实现方法的更多相关文章
- sqlalchemy mark-deleted 和 python 多继承下的方法解析顺序 MRO
sqlalchemy mark-deleted 和 python 多继承下的方法解析顺序 MRO 今天在弄一个 sqlalchemy 的数据库基类的时候,遇到了跟多继承相关的一个小问题,因此顺便看了一 ...
- python基础----继承与派生、组合、接口与归一化设计、抽象类、子类中调用父类方法
一.什么是继承 继承是一种创建新的类的方式,在pyth ...
- python基础知识09-继承,多继承和魔术方法
1.继承 class Father: def init(self,age,sex): self.age = age self.sex = sex class Son(Father): 类名后面写括号, ...
- [python] 在 python2和3中关于类继承的 super方法简要说明
下面举一个例子,同样的代码使用 python2 和 python3 写的,大家注意两段程序中红色加粗的部分: python2的类继承使用super方法: #-*- coding:utf-8 -*- ' ...
- 04 Python的继承、方法重写、super()类、父类私密属性的调用
继承 A类继承B类,A即可获得B类的全部公共属性和方法(包括内置属性和方法).格式如:class A(B): class Animal: def sleep(self): print("zZ ...
- python基础——继承和多态
python基础——继承和多态 在OOP程序设计中,当我们定义一个class的时候,可以从某个现有的class继承,新的class称为子类(Subclass),而被继承的class称为基类.父类或超类 ...
- python子类调用父类的方法
python子类调用父类的方法 python和其他面向对象语言类似,每个类可以拥有一个或者多个父类,它们从父类那里继承了属性和方法.如果一个方法在子类的实例中被调用,或者一个属性在子类的实例中被访问, ...
- [修]python普通继承方式和super继承方式
[转]python普通继承方式和super继承方式 原文出自:http://www.360doc.com/content/13/0306/15/9934052_269664772.shtml 原文的错 ...
- Python进阶-继承中的MRO与super
Python进阶-继承中的MRO与super 写在前面 如非特别说明,下文均基于Python3 摘要 本文讲述Python继承关系中如何通过super()调用"父类"方法,supe ...
- python基础——继承实现的原理
python基础--继承实现的原理 1 继承顺序 class A(object): def test(self): print('from A') class B(A): def test(self) ...
随机推荐
- 管于pyinstaller 打包完成后不能运行的问题
方案一: 进入项目路径,在cmd窗口输入python 文件名.之后查看结果,看是否有模块未安装,或者是未导入模块.因为pyinstaller打包时,是按照被打包文件上的导入的库名进行打包的,所以需要将 ...
- mysql8数据转移到mysql5
源MySQL版本:8.0.20 目标MySQL版本:5.7.19 使用mysqldump.mysqlpump等工具备份源数据库的数据为sql文件 将sql文件里的utf8mb4_0900_ai_ci ...
- [django]数据的导入和导出
除了使用mysqldump或者MySQL客户端进行数据导出,django也提供了类似的功能. 导出 # 导出整个数据库并保存为json文件 python manage.py dumpdata > ...
- Fork me on GitHub彩带添加方法
在博客添加GitHub彩带的方法 针对博客园博客追加如图彩带的方法 依次进入 管理 → 设置 → 页首Html代码 将如下代码粘贴在该处 <a target="_blank" ...
- JavaScript的Map和WeakMap
熟悉JavaScript的Map和WeakMap Map Map的键/值可以是任何类型 基本API 初始化映射: //使用new关键字和Map构造函数进行初始化 const m1 = new Map( ...
- Jenkins 相关配置
https://www.cnblogs.com/zylyehuo/ 参考链接 解决:Jenkins: signature verification failed in update site 'def ...
- PyCharm的基础了解
简单了解PyCharm PyCharm的简单使用 修改主题 1 2 切换解释器 1 如何创建pythin文件 1 2 3 4 注释语法 行注释 这里是注释 块注释 '''这里是注释''' 常量和变量的 ...
- from itertools import groupby
需求:期望由 a 得到 b 实现方法: from itertools import groupby a = [ {'name': 'a', 'value': 1}, {'name': 'b', 'va ...
- C++ 算法竞赛、02 周赛篇 | AcWing 第2场周赛
AcWing 第2场周赛 竞赛 - AcWing 3626 三元一次方程 AcWing 3626. 三元一次方程 - AcWing 两层循环 #include <iostream> usi ...
- windows 网络模拟工具分享
[下载地址] Releases · jagt/clumsy · GitHub [介绍] 无需安装 无需篡改和代理 系统级限制,不针对单个程序,但可以针对单个IP 离线也可以限制,随停随用 界面简单 [ ...