zoukankan      html  css  js  c++  java
  • 类属性直接调用类

    from time import time, localtime, sleep # 调用模块也有顺序,time最后报错
    
    
    # 定义一个数字时钟类
     # 总结下今天写代码的问题:1:self没加。
                           # 2:调用方法show没加()
    class Clock_m(object):
    
        def __init__(self,hour=0 ,minute=0 ,second=0):
    
            #初始化函数
            self._second = second # self初始函数记得加点.
            self._hour = hour
            self._minute = minute
            # self._second = second
        @classmethod
        def now(cls): # 弄了好久:符号错了,要在英文状态下输入
            ctime = localtime(time())
            return cls(ctime.tm_hour,ctime.tm_min,ctime.tm_sec) # 记得加cls就和run加一样
     
        
        def run(self):
            # 定义一个让时间运行的函数
            self._second+= 1
            if self._second == 60: # if语句一般是跟判断,为真则执行以下语句
                self._second = 0
                self._minute += 1
                if self._minute == 60:
                    self._minute = 0
                    self._hour += 1 
                    if self._hour == 24:
                        self._hour = 0
        def show(self): # 一般函数最好带个self
            # 定义一个展示时间的函数
            return '%02d:%02d:%02d'%\
                (self._hour,self._minute,self._second)
        
            # @classmethod # 类方法的作用 使用类名直接访问,不加的话就会报TypeError
        # def now(cls): # 类方法内部需调用cls,而不是self
        #     ctime = localtime(time())
        #     return cls(ctime.tm_hour, ctime.tm_min, ctime.tm_sec)
    # def main():
    # disply = Clock_m(11,11,11)
    disply = Clock_m.now()
    while True:
        print(disply.show()) # show不打括号调用的是执行show方法的对象 <bound method Clock_m.show of <__main__.Clock_m object at 0x000001FC47A13908>>
        sleep(1)
        disply.run()
    
    # if __name__ == '__main__':
    #     main()
    努力拼搏吧,不要害怕,不要去规划,不要迷茫。但你一定要在路上一直的走下去,尽管可能停滞不前,但也要走。
  • 相关阅读:
    批处理集锦——(2)自定义函数
    批处理集锦——(1)怎么输出空行
    批处理实例——批量修改电视剧文件名称
    error C3861: “LOG4CPLUS_DEBUG”: 找不到标识
    vc个版本对应的vs版本
    Yii2中系统定义的常用路径别名,如果获取web的url
    asp提取声母源码
    Windows Error Code(windows错误代码详解)
    VS2013编译经常卡在正在从以下位置加载xxx.dll的符号
    Python3字符串截取值
  • 原文地址:https://www.cnblogs.com/wkhzwmr/p/14594258.html
Copyright © 2011-2022 走看看