类的魔法方法

xiaoxiao2021-02-28  109

构造和析构

构造

类定义时,有时候写__init__方法,有时候却没有,这是为什么呢? __init(self,[,...]) 答: 需求! __new__(cls[,...]) ####重写str字符串类#### calss UpStr(str): def __new__(cls,string): #string会原封不动的传给init方法 string = string.upper() return str.__new__(cls,string) s = UpStr("I love fishC") s

析构

__del__ 当多有对象的引用都被销毁时,才会调用__del__函数

算数运算

>>> class New_int(int): def __add__(self,other): return int.__sub__(self,other) >>> a = New_int(3) >>> b = New_int(3) >>> a+b 0

简单定制

基本要求: 定义一个计数器类 start和stop方法代表启动计时和停止计时 假设计时器对象t1,print(t1)和直接调用t1均显示结果 当计时器未启动或已经停止计时,调用stop方法会给予温馨的提示 两个计时器对象可以进行相加:t1+t2 只能使用提供的有限资源完成 需要资源: 使用time模块的localtime方法获取时间 time.localtime返回struct_time的时间格式 表现你的类:__str__和__repr__
转载请注明原文地址: https://www.6miu.com/read-19530.html

最新回复(0)