【python】之time库,创建数字时钟!

今天我们来看一下time库的一个使用,提到time库,大家应该很熟悉吧,作为python的内置库,无需安装,直接导入使用即可。

一.time库 常用函数介绍

1.time.time( ):返回当前时间的时间戳

import time

time.time()

####Out: 1693465071.7247112

2.time.sleep(S):线程推迟指定的时间运行。单位为秒。

import time

time.sleep(5)

###推迟5秒后继续运行

3.time.strftime(format[, t]):接收以时间元组,并返回以可读字符串表示的当地时间,格式由参数format决定

import time 

print(time.strftime("%Y-%m-%d %H:%M:%S"))

####2023-08-31 15:06:45

了解完基本的几个函数的使用,那么接下来我们通过一个实例来更加深入的了解time库吧。

二.用time库创建数字时钟

1.我们一步一步来看,首先创建我们的时钟类:

class Clock(object):
    

    def __init__(self, hour=0, minute=0, second=0):
        
        self._hour = hour
        self._minute = minute
        self._second = second

首先创建了我们的时钟类,定义了我们的初始化方法。

这边几个参数作用如下:

hour: 表示多少小时
minute: 表示多少分钟
second: 表示多少秒

2.编辑时钟运行算法

def run(self):
        self._second += 1
        if self._second == 60:
            self._second = 0
            self._minute += 1
            if self._minute == 60:
                self._minute = 0
                self._hour += 1
                if self._hour == 24:
                    self._hour = 0

这边是我们的时钟运行的一个函数,定义了_second += 1,即1秒一秒的往上加,待self._second == 60的时候,恢复为0S,_minute += 1,_minute == 60则继续往上递增,_hour += 1,可能我的表达不是很好,其实很好理解,就是我们的时钟的正常运行机制,继续往下看。

3.显示时间

def show(self):
        return '%02d:%02d:%02d' % \
               (self._hour, self._minute, self._second)

上面代码中%02d是什么意思呢?又或者为什么不能写成%2d呢?

%2d是将数字按宽度为2,采用右对齐方式输出,若数据位数不到2位,则左边补空格

%02d,和%2d差不多,只不过左边补0

4.编辑主程序.main

def main():
    clock = Clock(23, 59, 59)
    while True:
        print(clock.show())
        sleep(1)
        clock.run()

先来看下程序执行的输出,如下:

再来看下我们主程序的代码:

定义一个变量clock,像我们的类传入参数Clock(23, 59, 59)。

然后这边用到了time库的time.sleep()函数,上面有说过此函数的功能。这样一个数字时钟的程序就完成了。

二.总结

time库运用几乎涵盖各种项目,这边也是通过一个小例子来更深入的了解time库。

@Neng

猜你喜欢

转载自blog.csdn.net/pengneng123/article/details/132603383