• Python计时库——Time库的使用详解


    今天继续给大家介绍Python相关知识,本文主要内容是Python计时库——Time库的使用详解。

    一、Python Time库简介

    time库是Python的标准库之一,主要用来系统级别的精确计时,获取当前时间并进行时间的格式化输出。time库的使用需要引用:

    import time
    
    • 1

    time库主要包括三类函数,这三类函数分别用于时间获取、时间格式化以及程序计时。下面,我就来讲解这

    二、Time库时间获取

    time库时间获取主要是用到了以下4个函数,这4个函数及其具体作用如下所示:
    1、time()
    time()函数主要用于获取当前的时间戳,即计算机内部的系统时间值,该值是一个浮点数。
    2、ctime()
    ctime()函数主要用户获取当前的时间,并且以一个易读的方式显示,返回的结果是一个字符串。
    3、gmtime()
    gmtime()函数也是用于返回当前时间,该函数返回的是一个结构体,是方便计算机处理的时间格式。
    4、localtime()
    需要注意的是,gmtime()函数返回的时间是0时区的时间,并不是当前所在时区的时间。而我们使用函数localtime()返回的时间则是当前时区的时间。该函数与gmtime()函数返回的格式是完全相同的。
    这四个函数执行后结果如下所示:
    在这里插入图片描述
    从上图中可以看出,gmtime()和localtime函数返回的结构体中有很多参数,分别是当前的年、月、日、小时、分钟、秒,星期(注意,0表示周一,因此这里5表示周六)、当天在一年中属于第多少天以及是否为夏令时。

    三、Time库时间格式化

    对时间的格式化是指将当前时间按照我们想要的格式来进行输出,time库时间的格式化类似于字符串的格式化,需要有展示模板和特定的格式化控制字符。
    time库时间格式化函数是strftime(),该函数使用格式如下:

    strftime(【格式化模板字符串】,【计算机内部时间类型变量】)
    
    • 1

    格式化控制字符有很多,常见的字符如下表所示:

    格式化字符串作用
    %Y年份,取值范围是0000-9999
    %m月份,取值范围是01-12
    %B月份英文名称,如January
    %b月份缩写,Jan
    %d日期,取值范围01-31
    %A星期英文名称,如Monday
    %a星期缩写,如Mon
    %H24h制的小时,取值00-23
    %I12h制的小时,取值00-12
    %p表示上午(AM)或者下午(PM)
    %M分钟,取值范围00-59
    %S秒,取值范围00-59

    strftime()函数可以将一个时间变量转换成我们想要的字符串格式,同样的,strftime()函数的“逆函数”strptime()函数,可以将一个含有时间的字符串,按照我们想要的格式提取并转化成时间。strptime()函数使用如下所示:

    strptime(【带有时间的字符串】,【格式化模板】)
    
    • 1

    time库时间格式化示例如下所示:
    在这里插入图片描述

    四、Time库程序计时和休眠

    除了获取时间和时间的格式化以外,time库还可以用于程序计时和程序休眠,程序计时指的是测量一段程序运行所经历的时间,程序休眠是指让程序停止运行(休眠)一段时间。
    time库中使用perf_counter()函数来进行程序计时,该函数计时起点是不确定的,因此我们至少需要连续调用两次计算其差值才有意义。time库使用perf_counter函数进行程序计时示例如下:
    在这里插入图片描述
    此外,time库还支持sleep()函数,该函数可以让程序休眠指定的时间,sleep()函数使用如下所示:
    在这里插入图片描述
    原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

  • 相关阅读:
    yolov5自动训练/预测-小白教程
    入门深度学习—从配置python到网络模型
    前端项目打包成docker镜像报错:Module not found: Can't resolve '@/app/components/admin/AdminApp'
    MySQL 创建用户,修改用户,授权,删除用户等操作命令
    为什么接口中字段要static和final修饰?
    数字化转型导师坚鹏:金融机构数字化运营
    QT+OSG/osgEarth编译之十六:libxml2+Qt编译(一套代码、一套框架,跨平台编译,版本:libxml2-2.10.3)
    Java-KoTime:热更新-不重启替换代码
    软件测试培训之十个无脚本测试方案
    面试题:有了 for 循环 为什么还要 forEach ?
  • 原文地址:https://blog.csdn.net/weixin_40228200/article/details/127708004