time模块:用于时间的访问和转换
UTC:协调世界时(世界统一时间)
时间戳:是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数(Python中返回的是秒数,并且为float类型)
时间元组:Python用一个元组装起来的9组数字(struct_time元组)
字段 | 属性 | 值 |
4位数年 | tm_year | 2018 |
月 | tm_mon | 1到12 |
日 | tm_mday | 1到31 |
小时 | tm_hour | 0到23 |
分钟 | tm_min | 0到59 |
秒 | tm_sec | 0到61(60或61是闰秒) |
一周的第几日 | tm_wday | 0到6(0是周一) |
一年的第几日 | tm_yday | 1到366(儒略历) |
夏令时 | tm_isdst | -1,0,1 (-1是决定是否为夏令时的旗帜) |
time模块方法:
time.time():获取当前时间戳
import time
print(;当前时间戳:',time.time())
当前时间戳:1536918914.7695003
time.process_time():返回当前进程处理器运行时间(不包括sleep时间)
import time print('当前处理器运行时间:'time.process_time())
当前处理器运行时间:0.031200199999999997
time.altzone:返回UTC的时间差
improt time
print('UTC时间差:'time.altzone)
UTC时间差:-32400
time.ctime():将一个秒数时间戳表示的时间转换为一个本地时间字符串
time.asctime():将一个tuple或者时间元组(struct_time对象)形式的时间转换为一个时间字符串
import time print(time.ctime()) print(time.asctime(time.localtime())) print(time.asctime())
结果:
Fri Sep 14 17:55:14 2018
Fri Sep 14 17:55:14 2018
Fri Sep 14 17:55:14 2018
time.localtime():返回指定时间戳对应的本地时间的时间元组(struct_time对象)
time.localtime(time.time()+n*3600):返回n个小时后本地时间的时间元组(struct_time对象)
import time
print(time.localtime()) print(time.localtime(time.time()+2*3600))
time.struct_time(tm_year=2018, tm_mon=9, tm_mday=14, tm_hour=18, tm_min=9, tm_sec=49, tm_wday=4, tm_yday=257, tm_isdst=0)
time.struct_time(tm_year=2018, tm_mon=9, tm_mday=18, tm_hour=22, tm_min=9, tm_sec=49, tm_wday=1, tm_yday=261, tm_isdst=0)
time.gmtime():返回指定UTC时间的时间元组(struct_time对象)
time.gmtime(time.time()+n*3600):返回n个小时后UTC时间的时间元组(struct_time对象)
import time
print(time.gmtime())
print(time.gmtime(time.time()-800000))
time.struct_time(tm_year=2018, tm_mon=9, tm_mday=14, tm_hour=10, tm_min=9, tm_sec=49, tm_wday=4, tm_yday=257, tm_isdst=0)
time.struct_time(tm_year=2018, tm_mon=9, tm_mday=5, tm_hour=3, tm_min=56, tm_sec=29, tm_wday=2, tm_yday=248, tm_isdst=0)
time.strptime():将时间字符串转换为时间元组(struct_time对象)
time.mktime():将时间元组(struct_time对象)转换为时间戳
import time
struct_1 = time.strptime("2016/05/22", "%Y/%m/%d")
print(struct_1)
struct_2 = time.mktime(struct_1)
print(struct_2)
time.struct_time(tm_year=2016, tm_mon=5, tm_mday=22, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=6, tm_yday=143, tm_isdst=-1)
1463846400.0
time.strftime():将时间元组(struct_time对象)转换为时间字符串,如果参数不指定则取当前本地时间的时间元组(struct_time对象)
import time
print(time.strftime("%Y-%m-%d %H:%M:%S", time.gmtime()))
2018-09-14 10:18:05
Python 中时间日期格式符号:
%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 | 当前时区的名称 |
%% | %本身 |
其中: