time模块

利用Python完成自动化的任务,往往需要基于特定的时间和日期运行或定时运行。Python的内置的time模块便可以实现读取系统时钟的当前时间。time模块中最常用的就是time.time()time.sleep()

一、获取当前时间

time.time()函数

返回1970年1月1日0点以来到此刻的秒数,这个数字称为UNIX纪元时间戳。注:人不可读。

import time

time.time()
# output
1653451585.033248

time.ctime()函数

返回一个关于当前时间的字符串描述,便于人阅读。也可以以传入时间戳参数,返回该时间戳的字符串描述。

time.ctime()
# output 
'Wed May 25 14:57:11 2022'

time.ctime(1653451585.033248)
# output
'Wed May 25 12:06:25 2022'

应用1:计算某个程序的用时

import time

def task():
    out = 1
    for i in range(1,100000000):
        out = out + i
    return out

startTime = time.time()
out = task()
endTime = time.time()
print(f"1到1亿相加结果:{out}")
print(f"执行task()函数用时:{endTime - startTime}")
# output
11亿相加结果:4999999950000001
执行task()函数用时:3.8387675285339355

应用2:秒表

import time
# 秒表小程序

print("欢迎使用秒表小程序,按回车键开始计时,再次按下回车键可以记录当前时间。按【ctrl+c】结束秒表")
input()
print("秒表启动")
# 初始化
startTime = time.time()
lastTime = startTime
num = 1
try:   
    while True:
        input()
        deltaTime = round(time.time() - lastTime, 2)
        totalTime = round(time.time() - startTime, 2)
        print('标记%d\t+%s\t%s' %(num,deltaTime,totalTime))
        num += 1
        lastTime  = time.time()   # 最近一圈的开始时间
except KeyboardInterrupt:
    # 在命令行按下【ctrl+c】会抛出KeyboardInterrupt异常
    print("计时结束")

运行效果

二、让程序暂停

time.sleep()函数

time.sheep(5) # 暂停5秒

应用3:倒计时

import time
# 倒计时小程序

totalTime = input("请输入倒计时的秒数:")

if totalTime.isdigit():
    print(totalTime)
    totalTime = int(totalTime)
    while totalTime>0:
        print('还剩%d秒'% totalTime)
        time.sleep(1)
        totalTime-=1
    print("时间到")
else:
    print("请输入整数")

倒计时运行效果

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐