第七次(魔法方法)

1、

总结 __new__, __init__ , __str__ , __rstr__ , __getitem__ , __setitem__的使用方法
__init__(self[, ...])构造器,创建实例
__new__(cls[, ...])cls为实例化参数,返回给init
__str__(self)打印对象、强转数据格式、使用%s
__rstr__不知道,是不是想问__repr__
 __getitem__(self, key) 定义获取容器中元素的行为,相当于 self[key]
  __setitem__(self, key, value) 定义设置容器中指定元素的行为,相当于 self[key] = value

2、

import time
class tim():

    def __init__(self):
        self.__start = None
        self.__stop = None
        self.__c = 0
        
    def __str__(self):
        if self.__c == 0:
            return "计时未启动!"
        else:
            return ("计时: %d 秒" % self.__c)

    def start(self):
        self.__start = time.time()
        print("计时器启动")
        
    def stop(self):
        if (not self.__start):
            print("计时未启动!请start启动!")
        else:
            print("计时器结束!")
            self.__stop = time.time()
            self.__c = self.__stop - self.__start
            print("计时: %d 秒" % self.__c)
            return self.__c

    def __add__(self, other):
        print("共计时 %d 秒" % int(self.__c + other.__c))


t1 = tim()
print(t1)
t1.stop()
t1.start()
time.sleep(2)
t1.stop()

t2 = tim()
t2.start()
time.sleep(3)
t2.stop()
print(t2)
print(t1 + t2)

参考了网上的方法,编译首先需要了解time声明,time.sleep用法。编译过程中需要注意定义私有

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值