零基础入门学习python-类和对象
面向对象程序设计具有三大基本特征:封装,继承和多态。
- 封装:封装是面向对象编程的核心思想,将对象的属性和方法封装起来,其载体就是类,类通常会对客户隐藏一些其实现细节,这就是封装的思想。
- 继承:继承是实现重复利用的重要手段,子类通过继承复用了父类的属性和方法的同时又添加了子类特有的属性和方法。
- 多态:子类继承父类特征的同时,也具备了自己的特征,并且能够实现不同的效果。
super()函数是用于调用父类的一个方法。
super是用来解决多重继承问题的,直接用类名调用父类方法在使用单继承的时候没有问题,但是如果使用多继承(MRO)、重复调用(钻石继承)等问题
MRO就是类的方法解析顺序表,其实也就是继承父类方法的顺序表
super()方法的语法:
super(type[,object-or-type])
参数
- type–类
- object-or-type–类,一般是self
类和对象相关的BIF:
issubclass(class,classinfo)
#如果"class"是"classinfo"的一个子类,则返回True,否则返回False
isinstance(object,classinfo)
#如果"object"是"classinfo"的实例对象,则返回True,否则返回False
hasattr(object,name)
#如果"object"中有属性"name",则返回True,否则返回False
getattr(object,name[,default])
#如果"object"中没有"name"属性,则返回"default"中的值。如果没有设置"default"参数,则抛出ArttributeError异常
setattr(object,name,value)
#如果"object"中没有"name"属性,则新建一个名为"name"的属性,值为"value"
delattr(object,name)
#删除"object"中名为"name"的属性,如果属性不存在,则抛出AttributeError的异常
property(fget=None,fset=None,fdel=None,doc=None)
例如:
class C:def __init__(self,size=10):self.size=sizedef getSize(self):return self.sizedef setSize(self,size):self.size=sizedef delSize(self):del self.sizex=property(getSize,setSize,delSize)
这里将c.x 做重新赋值和删除操作的的话,c.size属性也会有做出相同的操作
这就是property的作用,property()会返回一个可以设置属性的属性,如何设置属性需要人为的来写代码。第一个参数是获取属性,第二个参数是设置属性,第三个是删除属性。
零基础入门学习python-类和对象相关推荐
- 零基础python必背代码-零基础入门学习python 96集全
零基础入门学习python 96集全 第000讲 愉快的开始(视频+课件)xa0 第001讲 我和Python第一次亲密接触(视频+课件)xa0 第002讲 用Python设第一个游戏(视频+课件+源 ...
- 零基础学python pdf-Python pdf(零基础入门学习Python)V1.0 最新版
Python pdf(零基础入门学习Python)是一款功能强劲专业实用的Python电子书籍.想要零基础入门学习Python?那就快试试绿色先锋小编推荐的Python pdf最新版下载使用.由作者小 ...
- 零基础入门学习Python(21):魔法方法(1)构造和析构
零基础入门学习Python(21):魔法方法(1)构造和析构 从这节开始,我们介绍下Python的魔法方法:魔法方法总是被双下划线包围. 之前有提到过初始化的魔法方法__init__(),它返回Non ...
- 零基础学python 视频_零基础入门学习PYTHON(第2版)(微课视频版)
小甲鱼畅销图书重磅升级,针对Python 3.7,通过生动的实例,让读者在实践中理解概念,在轻松.愉快中学会Python! 本书提倡理解为主,应用为王.因此,只要有可能,小甲鱼(注:作者)都会通过生动 ...
- 零基础入门python小甲鱼-小甲鱼零基础入门学习Python百度云下载 | 宅男君
Python编程语言可以在不同平台上使用,比如Windows.MAC.Linux操作系统.通常情况下,一个Python程序在你自己的Windows系统上运行,也可以在别人的MAC系统上运行.Pytho ...
- python零基础入门教程百度云-小甲鱼零基础入门学习Python百度云下载 | 宅男君
Python编程语言可以在不同平台上使用,比如Windows.MAC.Linux操作系统.通常情况下,一个Python程序在你自己的Windows系统上运行,也可以在别人的MAC系统上运行.Pytho ...
- 小甲鱼python教程视频怎么样-小甲鱼零基础入门学习Python视频教程全套96集
资源介绍 教程名称: 小甲鱼零基础入门学习Python视频教程全套96集 课程简介: xa0 xa0 Python具有跨平台特点,Python可以在各种不同类型的计算机上运行,Windows.MAC. ...
- 0基础学python难吗-零基础入门学习Python技术难不难?
原标题:零基础入门学习Python技术难不难? 近几年对python人才爆发式需求,导致很多人转行进入python开发行业,现如今Python这门语言的就业前景会非常好.相对于其他来说,它语法简单易读 ...
- 零基础学python难吗-零基础入门学习Python技术难不难?
原标题:零基础入门学习Python技术难不难? 近几年对python人才爆发式需求,导致很多人转行进入python开发行业,现如今Python这门语言的就业前景会非常好.相对于其他来说,它语法简单易读 ...
- 第031讲:永久存储,腌制一缸美味的泡菜 | 学习记录(小甲鱼零基础入门学习Python)
(标答出处: 鱼C论坛) <零基础入门学习Python> 测试题: 0.pickle的实质是什么? pickle的实质是利用一些算法,将你的数据对象腌制成二进制文件,存储在磁盘上,也可以放 ...
最新文章
- SQL点滴31—SQL语句中@@IDENTITY和@@ROWCOUNT区别
- [BZOJ4811][Ynoi2017]由乃的OJ 树链剖分+线段树
- 动态规划---最短编辑距离
- python函数编程训练题_Python文件与函数练习题
- Spring Boot AOP记录用户操作日志
- 对象空指针_可选和对象:空指针救星!
- 账龄分析表excel模板_华为财务EXCEL内训手册(共131套模板,带公式).xls
- 智能家居有线系统KNX的介绍
- (C++)实现简单分数相加
- 论文阅读:Retrieval-augmented Generation across Heterogeneous Knowledge
- 绿地五里桥 设计原型_绿地 · 黄浦滨江项目设计
- 与语音信号处理有关的java书籍_MATLAB在语音信号分析与合成中的应用 中文pdf扫描版[198MB]...
- Mapbox离线字体 glyphs
- keep-alive和activated的使用
- 日志数据如何同步到MaxCompute
- 师傅带徒弟学:Python Web之Flask框架-关东升-专题视频课程
- python从入门到入魔第八天——turtle库使用(含玫瑰花绘制实例)
- 信息孤岛的由来,以及如何改善
- 9招教你防止电脑辐射
- node.js里的天龙八部