python中time库是处理时间的标准库,获取系统时间并输出功能。
分别由时间获取:time() ctime() gmtime()
时间格式化 :strftime() strptime()
程序计时:sleep(), perf_counter()
最基本的.time函数可以获取当前时间戳,然后返回一个浮点数,浮点数是根据,即1970年1月1日0点0分0秒到当前时间所经过的秒数。
.ctime()函数可以将时间转化为易读的字符,例如上图所显示的时间就为2021年9月22日星期三 晚上19点11分35秒,相较于浮点数的时间戳更加易读。
.gmtime()函数则可以将时间转化为程序所可以处理的时间,产生了struct_time格式的时间。
注意:(图中时间与实际时间不符是因为输出的时间是按照GMT+0的格林威治标准时间输出的,所以对应北京时间需要加上8)
使用时间格式化可以将时间以合理的方式展现出来,但是需要有展示模板,由特定的格式化控制符组成。
可以使用strftime()函数将时间格式化。
可以看到上面的例子给.strftime()函数提供了.gmtime()格式的时间,然后根据.strftime()函数的前一个参数提供的格式将时间格式化。
上面的示例中第一个提供的参数是"%Y"代表当前年份。
第二个"%m"代表当前的月份,也可以用"%B"或"%b"进行替代。如果使用%B程序则会输出月份的英文名称,而小写的b就会输出英文缩写。
第三个"%d"表示当前的日期。
程序也可以输出当前的星期,"%A"就为当前的星期英文全称,相同的%a就为当前星期的英文三位简称。
"%H"为当前以24小时制的数字。"%I"为12小时制的小时,若要区分上下午,则要加入"%p"输出AM或者PM。
通过格式化时间就可以将时间以合理的方式输出,方便阅读。
相对.strftime()函数,还有.strptime()函数可以将格式化后的时间按照给出的模板转化为程序可读的时间。
可以看到,.strptime()函数将字符串转化为未格式化的时间,方便程序进行操作。
time库可以对程序进行计时。
.perf_counter()函数可以记录当前CPU中的时间,能提供非常精准的时间(以纳秒为单位,但返回的时间单位为秒)。
但是这个函数的起点不确定,需要以做差的形式确定程序运行的时间。
time库中有sleep()函数,可以将程序暂停运行指定的时间(单位为秒)。