一、课堂导入
通过我们上节课的学习,我们学习了模块的基本概念,知道了通过import导入的方式将模块引入。本节课我们将更加深入的学习模块,学习常用的一些模块。
二、time模块
# 与时间相关的功能。
三、时间的三种表示方法
# 格式化的字符串 # 时间戳 # struct_time,元组,有九个参数
时间分为三种:
# 1.时间戳:指格林威治时间1970年01月01日00时 00分00秒(北京时间1970年01月01日08时00分00 秒)起至现在的总秒数。
# 作用:时间戳一般用来记录下关键时间点,广泛的运用在知识产权保护、 合同签字、 金融帐务、 电子报价投标、 股票交易等方面。主要用于计算两个时间的差
# 2.localtime 本地时间 表示的是计算机当前所在的位置
# 3.UTC 世界协调时间
四、获取方式
首先导入time模块,然后做一系列的操作
import time # 获取时间戳,返回浮点型 print(time.time()) # 获取格式化时间,返回以可读字符串表示的当地时间 now = time.strftime("%Y-%m-%d %H:%M:%S") print(now) # 获取当前时间,返回的是结构化时间 y = time.localtime() print(y) # 获取UTC时间 返回的还是结构化时间 比中国时间少8小时 print(time.gmtime())
时间格式转换:
import time # 将格式化字符串时间转换为时间戳 Time = "2018-07-31 12:12:12 " timeTuple = time.strptime(Time, "%Y-%m-%d %H:%M:%S") timeStamp = int(time.mktime(timeTuple)) print(timeStamp) # 将时间戳转换为指定格式的日期 timeStamp = 1569938332 timeTuple = time.localtime(timeStamp) otherTime = time.strftime("%Y-%m-%d %H:%M:%S", timeTuple) print(otherTime) # 将格式化字符串时间转换struct_time时间 thisTime = "2016-07-31 12:12:12" timeTuple = time.strptime(thisTime, "%Y-%m-%d %H:%M:%S") print (timeTuple) # 将时间戳改成当前的struct_time时间 c = time.localtime(1469938332) print(c) # 将获取的时间转成我们期望的格式 仅支持结构化时间 print(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())) # 将格式化字符串的时间转为结构化时间 注意 格式必须匹配 print(time.strptime("2019-10-11 15:00:00","%Y-%m-%d %H:%M:%S")) # 时间戳 转结构化 print(time.localtime(time.time())) # 结构化转 时间戳 print(time.mktime(time.localtime())) # sleep 让当前进程睡眠一段时间 单位是秒 # time.sleep(2) # print("over")
五、datetime模块
# python实现的一个时间处理模块
import datetime # 获取时间 获取当前时间 并且返回的是格式化字符时间 print(datetime.datetime.now())
测试某段代码的运行时间
import datetime starttime = datetime.datetime.now() #添加需要运行的代码 endtime = datetime.datetime.now() print((endtime - starttime).seconds)
六、总结
# 1.time.strftime():把一个struct_time时间转化为格式化字符串时间 # 2.time.localtime():将一个时间戳转换为当前时区的struct_time。 # 3. time.gmtime()将一个时间戳转换为UTC时区的struct_time。 # 4. time.time():返回当前时间的时间戳。 # 5. time.mktime():将一个struct_time时间转化为时间戳。 # 6. time.sleep():推迟程序运行时间,单位为秒。