python学习笔记(25)-继承
#继承
class RobotOne: #第一代机器人
def __init__(self,year,name):
self.year=year
self.name=name
def walking_on_ground(self):
print(self.name+'只能在平地上行走,有障碍物就会摔的')
def robot_info(self):
print("{0}年产生的机器人{1},是中国研发的".format(self.year,self.name)) # 为了多继承写的第二代机器人
# class RobotTwo(RobotOne): #第二代机器人,继承了第一代了类
#
# def walking_on_ground(self): #子类里面的函数名和父类函数名重复的时候,就叫重写
# print(self.name+'可以在平地上行走')
#
# def walking_avoid_block(self): #父类没有,子类有,叫拓展
# #想在子类的函数里面调用父类的一个函数
# self.robot_info()
# print(self.name+"可以避开障碍物") # class RobotTwo: #第二代机器人,
# def __init__(self,year,name):
# self.year=year
#
# def walking_on_ground(self): #子类里面的函数名和父类函数名重复的时候,就叫重写
# print(self.name+'可以在平地上行走')
#
# def walking_avoid_block(self): #父类没有,子类有,叫拓展
# #想在子类的函数里面调用父类的一个函数
# self.robot_info()
# print(self.name+"可以避开障碍物") #为了超继承写的第二代机器人
class RobotTwo(RobotOne): #第二代机器人, def walking_on_ground(self): #子类里面的函数名和父类函数名重复的时候,就叫重写
super(RobotTwo,self).walking_on_ground() #超继承,会继承父类的该方法
print(self.name+'可以在平地上行走') r= RobotTwo("","小王")
r.robot_info()
r.walking_on_ground()
#r.walking_avoid_block()
#继承的类 是否要用到初始化函数 请看是否从父类继承了。
#父类有的,继承后,可以直接拿过来用
#父类有的,子类也有重名的函数,那么子类的实例就优先调用子类的函数 #面试的时候的继承:多继承和超继承 #第三代机器人,多继承
# class RobotThree(RobotOne,RobotTwo): #第三代机器人,继承了第一代和第二代的了类
# def jump(self):
# print(self.name+"单膝跳跃")
#
# r3=RobotThree("","大王")
# r3.jump()
# r3.walking_on_ground() #会摔倒,RobotOne在前,RobotTwo在后
#
# r3=RobotThree("大王")
# r3.walking_on_ground() #不会摔倒,RobotTwo在前,RobotOne在后 #具有两个父类的属性和方法,如果两个父类具有同名方法的时候,就近原则。
#多继承的时候,继承的类的初始化值不一致问题???
#子类调用函数就近原则,初始化函数也包括在内。 #超继承
#改写父类的方法,同时还要使用父类的方法,使用超继承。
#super关键字会顺着子类的名字去找到父类的方法,调用父类里面的重名方法
python学习笔记(25)-继承的更多相关文章
- python学习笔记25(文件管理 os包)
os包我们经常会与文件和目录打交道,对于这些操作python提供了一个os模块,里面包含了很多操作文件和目录的函数.如果你对linux基本操作了解的话,下面的一些os方法应该会很熟悉的,因为基本和li ...
- python学习笔记整理——字典
python学习笔记整理 数据结构--字典 无序的 {键:值} 对集合 用于查询的方法 len(d) Return the number of items in the dictionary d. 返 ...
- OpenCV之Python学习笔记
OpenCV之Python学习笔记 直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看 到一本国外的新书< ...
- Python学习笔记(六)
Python学习笔记(六) Ubuntu重置root密码 Ubuntu 16.4 目录结构 Ubuntu 命令讲解 1. Ubuntu重置root密码 启动系统,显示GRUB选择菜单(如果默认系统启动 ...
- 【python学习笔记】7.更加抽象
[python学习笔记]7.更加抽象 类的定义就是执行代码块 在内存保存一个原始实例,可以通过类名来访问 类的实例化,是创建一个原始实例的副本, 并且所有成员变量与原始实例绑定 通过修改实例变量,可以 ...
- python学习笔记5_异常
python学习笔记5_异常 1.什么事异常 Python使用异常对象(exception object) 来表示异常情况.遇到错误会发生异常. 如果异常对象未被处理或被捕捉,程序就会用所谓的回溯(t ...
- python学习笔记4_类和更抽象
python学习笔记4_类和更抽象 一.对象 class 对象主要有三个特性,继承.封装.多态.python的核心. 1.多态.封装.继承 多态,就算不知道变量所引用的类型,还是可以操作对象,根据类型 ...
- Python 学习笔记 - 不断更新!
Python 学习笔记 太久不写python,已经忘记以前学习的时候遇到了那些坑坑洼洼的地方了,开个帖子来记录一下,以供日后查阅. 摘要:一些报错:为啥Python没有自增 ++ 和自减 --: 0x ...
- Deep learning with Python 学习笔记(10)
生成式深度学习 机器学习模型能够对图像.音乐和故事的统计潜在空间(latent space)进行学习,然后从这个空间中采样(sample),创造出与模型在训练数据中所见到的艺术作品具有相似特征的新作品 ...
- Deep learning with Python 学习笔记(8)
Keras 函数式编程 利用 Keras 函数式 API,你可以构建类图(graph-like)模型.在不同的输入之间共享某一层,并且还可以像使用 Python 函数一样使用 Keras 模型.Ker ...
随机推荐
- 十、CI框架之通过参数的办法输出URI路径
一.代码如下,index函数有2个参数 二.效果如下: 不忘初心,如果您认为这篇文章有价值,认同作者的付出,可以微信二维码打赏任意金额给作者(微信号:382477247)哦,谢谢.
- UE手游如何应对CPU帧率瓶颈和卡顿?
如何高效准确详细的对性能进行剖析?腾讯游戏学院专家Leonn将归纳总结在UE下对每一性能指标的剖析方法,本文重点讲解如何应对CPU帧率瓶颈和卡顿? CPU上帧率低和卡顿是性能优化中最易出现的一部分,尤 ...
- impdp导入.dmp到oracle
1.创建表空间 create tablespace CCGRP_PRO --表空间名 datafile 'D:\oracleData\test.dbf' --物理文件 表空间数据文件存放路径size ...
- 自定义alert
参考:https://www.cnblogs.com/st-leslie/articles/5279864.html 把window.alert=function(){}指向新的方法,即相当于重写 w ...
- Linux学习-课后练习(第二章命令)20200216
- 基于python的小波阈值去噪算法
https://blog.csdn.net/alwaystry/article/details/52756051 发表于 2018-01-10 16:32:17 嵌入式设计应用 +关注 小波图像去噪原 ...
- 用python3读csv文件出现UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd6 in position 0: invalid continuation byte
1.python3读取csv文件时报如下图所示的错误 2.分析原因:读取的csv文件不是 UTF8 编码的,而IDE工具默认采用 UTF8 解码.解决方法是修改源文件的解码方式. 3.使用nodepa ...
- JetBrains系列-插件
插件官网:http://plugins.jetbrains.com 注意:网站有时不稳定,会造成打不开,属正常现象或许下一秒就好了,可以选择去git等方式下载 1.安装说明: 打开fil ...
- C语言中getopt()和getopt_long()函数的用法
一.参考文章 1.C语言中getopt()和getopt_long()函数的用法 2.linux 中解析命令行参数 (getopt_long用法) 二.调试经验
- 白痴级教程,新手看过来,具详细实操文档 (word图片复制不过来,0202年了还有这样的不便利,下回研究一下,图片下次补)
一.环境配置(win10): 1.配置cmd的python环境为arcmap10.2 自带的python解释器(2.7.3)(自带arcpy库) 具体操作: 1我的电脑右击属性,打开 (选中path点 ...