| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Python知识库 -> Python-100-Days学习笔记day09 -> 正文阅读 |
|
[Python知识库]Python-100-Days学习笔记day09 |
# @classmethod ? cls等同于大类名称Clock,所以cls(参数)等价于Clock(参数)
time类中的方法localtime是将秒数转化为年月日的固定格式,由固定的变量名储存,所以cls代指大类,然后把新的tm_hour,tm_min,tm_sec赋给大类自身的属性
可以直接对类方法进行创建对象,使得now方法本来就是一个对象,在进行调用时不需要实例化 然后该对象的属性仍是大类中的属性名,还能继续调用大类中的其他方法
super().__init__(name, age)相当于继承了Person中的init方法,然后填入init方法所需要的参数name,age
含abstractmethod方法的类不能实例化,继承了含abstractmethod方法的子类必须复写所有abstractmethod装饰的方法,未被装饰的可以不重写。(所以没有重写__init__方法) 以下面这个例子为例,Pet不需要实例化,只需要作为父类在不同宠物类进行继承即可;又因为要实现不同宠物要打印出不同的叫声,因此Pet中的make_voice方法需要@abstractmethod进行修饰,从而实现不同的子类对象会表现出不同的行为,此称为多态。 将Pet类处理成了一个抽象类,所谓抽象类就是不能够创建对象的类,这种类的存在就是专门为了让其他类去继承它。需要abc模块的ABCMeta元类和abstractmethod包装器来达到抽象类的效果。因此metaclass=ABCMeta是python中抽象类所必备的参数 pass只作为一个占位语句,保持结构完整
可以把要执行的对象写为列表,然后用循环依次进行
想要自动输出属性就要定义以下方法,不然打印对象print(Ultraman)出来的不是属性而是一串指针值
类内的方法必须要有self参数,因为他属于类。在类之外的就可以不需要self参数 一旦有一个True即跳出for循环,return可以立马终止最外层的循环
__repr__() 方法是类的实例化对象用来做“自我介绍”的方法,默认情况下,它会返回当前对象的“类名+object at+内存地址”,而如果对该方法进行重写,可以为其制作自定义的自我描述信息。
再一次,将对象存在了列表里,current属性由于默认为0,不需要输入,所以在方法括号里无需添加这个变量
isinstance(object, classinfo)是判断两个类型是否相同
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/16 3:28:52- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |