目录
前言:
time简介
导入模块
1.时间戳
2.时间元组
(1)把时间戳转换为元组形式
(2)元组转换为时间戳输出
(3)把元组转换为格式化时间
(4)把时间戳转换为格式化时间
3.字符串时间(重点)
(1)把一个元组类型的时间转换为字符串形式
(2)把一个字符串转换为元组日期类型
4.停机休眠
前言:
上一节讲了模块的定义和使用Python学习-----模块1.0(模块的简介、定义与使用)_Python欧尼酱的博客-CSDN博客这一节就开始讲讲Python中的时间模块time,这个模块是Python自带的,我们不需要去下载,直接导入就可以使用。
time简介
世界上第一台计算机操作系统Unix是诞生于1970年,然后就开始了计算机的时间计算,所以我们计算机的时间是开始于1970年1月1日0:00,而这一节要讲到的time的时间戳也就是从这个时间到此时此刻的秒数。下面会详细讲解。
时间的表现形式:
1.时间戳
2.元组
3.字符串
导入模块
import time
1.时间戳
time.time()
import time
res=time.time()
print(res)
#输出结果:1676709230.092293
#这个是从1970.1.1 0:00 到此时此刻过了的秒数
2.时间元组
地球是分为24个时区的,从英国的格林尼治(0时区开始),向东有12个时区,向西有12个时区,其中0时区和弟12时区是东西共有的。而我国北京时间也就是东八区,我国幅员辽阔,最东边与最西边时间相差差不多4个小时,实际上我国都是统一去使用北京时间的,这样可以去方便管理。而美国是使用夏令时的,夏令时实际上就是比实际时间还要早1个小时,比如西7区此时是11:48,而换算为夏令时就是10:48。这些都是高中的地理知识,了解了解
(1)把时间戳转换为元组形式
方式1
time.localtime(res)
说明:这个函数的方式是传入一个时间戳,然后以元组的形式输出这个时间,如果没有传入时间戳,那么输出就是此时此刻的时间元组
注意:输出的时间是你计算机所在的位置的时间,比如我在东八区就会输出东八区的时间(在中国不管你在哪里都会输出东八区的时间)
import time
a=time.localtime(1234567)#时间是此时东八区的时间
print(a)
#输出结果:time.struct_time(tm_year=1970, tm_mon=1, tm_mday=15, tm_hour=14, tm_min=56, #tm_sec=7, tm_wday=3, tm_yday=15, tm_isdst=0)
b=time.localtime()
print(b)
#输出结果:time.struct_time(tm_year=2023, tm_mon=2, tm_mday=18, tm_hour=16, tm_min=47, #tm_sec=31, tm_wday=5, tm_yday=49, tm_isdst=0)
方式2
time.gmtime(res)
说明:这个函数的用法跟上面是一样的,只是输出结果是格林尼治时间(0时区的时间),然后以元组的方式输出
import time
b=t.gmtime()
print(b)
#输出结果:time.struct_time(tm_year=2023, tm_mon=2, tm_mday=18, tm_hour=8, tm_min=51, #tm_sec=8, tm_wday=5, tm_yday=49, tm_isdst=0)
(2)元组转换为时间戳输出
time.mktime(tu)
说明:传入一个元组的时间,输出是一个时间戳的时间
import time
x=time.mktime(time.localtime())
print(x)
#输出结果:1676711086.0
(3)把元组转换为格式化时间
time.asctime(tu)
说明:传入一个元组类型的时间,然后输出类似.Sun Oct 1 12:04:45 2022 的时间形式,如果没有传入内容就输出此时此刻的时间
import time
y=time.asctime(time.localtime())
print(y)
#输出结果:Sat Feb 18 17:06:29 2023
(4)把时间戳转换为格式化时间
time.ctime(res)
说明:传入一个时间戳,输出类似Sun Oct 1 12:04:45 2022 的时间形式,如果没有传入内容就输出此时此刻的时间
import time
j=time.ctime(time.mktime(time.localtime()))
print(j)
#输出:Sat Feb 18 20:04:36 2023
3.字符串时间(重点)
(1)把一个元组类型的时间转换为字符串形式
time.strftime(format,tu)
说明:format是转换的格式(必须写! ),其写法跟%d、%c等方式是类似的,tu是元组类型的时间
format的形式
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%M 分钟数(00=59)
%S 秒(00-59)
%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天(001-366)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数(00-53)星期天为星期的开始
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称
%% %号本身
import time
t=time.strftime('%Y %m %d %H:%M %z',time.localtime())
print(t)
#输出:2023 02 18 20:12 +0800
#(+0800是表示东八区)
(2)把一个字符串转换为元组日期类型
time.strptime(str,format)
说明:str是表示要被转换的字符串,format其实就是上面的那个表的内容,就是转换的格式
注意事项:要进行转换的字符串年月日要与format转换的个数一一对应,如果没有去说明转换的format或者没有去一一对应的话就会报错
import time
tt=time.strptime('2023 3 3 12:15','%Y %m %d %H:%M')
print(tt)
#输出:time.struct_time(tm_year=2023, tm_mon=3, tm_mday=3, tm_hour=12, tm_min=15, tm_sec=0, tm_wday=4, tm_yday=62, tm_isdst=-1)
图解说明:
4.停机休眠
time.sleep(t)
说明:其中的t是表示秒数,一般写入是一个整数,这个函数就是先让程序暂停t秒然后再接着运行
import time
t=3
print('%d秒后输出结果'%t)
time.sleep(t)
print('hello')
OK,这一期就到这里了,thanks~~~
分析一张壁纸~