python内置time模块--时间获取和转换
time模块提供各种时间相关的功能
与时间相关的模块有:time,datetime,calendar
这个模块的功能不是适用于所有的平台
这个模块中定义的大部分函数是调用C平台上的同名函数实现
一些术语和约定的解释:
1.时间戳(timestamp)的方式:通常来说,时间戳表示的是从1970年1月1日开始按秒计算的偏移量(time.gmtime(0))此模块中的函数无法处理1970纪元年以前的时间或太遥远的未来(处理极限取决于C函数库,对于32位系统而言,是2038年)
2.UTC(Coordinated Universal Time,世界协调时)也叫格林威治天文时间,是世界标准时间.在我国为UTC+8
3.DST(Daylight Saving Time)即夏令时
4.一些实时函数的计算精度可能不同
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
#作者:cacho_37967865
#博客:https://blog.csdn.net/sinat_37967865
#文件:pythonTime.py
#日期:2018-08-20
#备注:整理python中时间相关函数,导入内置time模块 tm_isdst = -1(由系统判断)tm_isdst = 0(指定为非夏令时)tm_isdst = 1(指定为夏令时)'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''import timestr_time = time.strftime('%Y%m%d%H%M')
print(type(str_time),"字符串类型:",str_time)stt_time = time.strptime(str_time,'%Y%m%d%H%M') # 实际上它和strftie()是逆操作
print(type(stt_time),"时间元组类型:",stt_time)#time.clock() # python3.3以后不被推荐使用gmTime = time.gmtime() # 接收时间辍(1970纪元年后经过的浮点秒数)并返回格林威治天文时间GMT下的时间元组,空时表示当前时间
print(type(gmTime),"时间元组类型:",gmTime) # time.struct_timelocal_time = time.localtime() # 接收时间辍(1970纪元年后经过的浮点秒数)并返回当地时间(北京时间CST)下的时间元组,空时表示当前时间
print(type(local_time),"时间元组类型:",local_time)cTime = time.ctime() # 接受时间元组并返回一个可读的形式的24个字符的字符串,空时表示当前时间
print(type(cTime),"str类型:星期+月份+日+时分秒+年:"+cTime)ascTime = time.asctime() # 接受时间元组并返回一个可读的形式的24个字符的字符串,空时表示当前时间
print(type(ascTime),"str类型:星期+月份+日+时分秒+年:"+ascTime)mk_time = time.mktime(gmTime) # 接受时间元组并返回时间辍(1970纪元年后经过的浮点秒数)
print(type(mk_time),"浮点类型float:",mk_time)time_time = time.time()
print(type(time_time),"浮点类型float:",time_time)
print("时间戳格式:"+str(int(time_time)))time.sleep(0.1) # 休眠时间 spro_time = time.process_time() # 返回当前进程执行CPU的时间总和,用于统计程序执行时间
print(type(pro_time),"浮点类型float:",pro_time)tz_name = time.tzname
print(type(tz_name),"tuple类型:",tz_name)
strftime() format格式如下:
%a 本地(local)简化星期名称
%A 本地完整星期名称
%b 本地简化月份名称
%B 本地完整月份名称
%c 本地相应的日期和时间表示
%d 一个月中的第几天(01-31)
%H 一天中的第几个小时(24小时制,00-23)
%l 一天中的第几个小时(12小时制,01-12)
%j 一年中的第几天(01-366)
%m 月份(01-12)
%M 分钟数(00-59)
%p 本地am或者pm的相应符
%S 秒(01-61)
%U 一年中的星期数(00-53,星期天是一个星期的开始,第一个星期天之前的所有天数都放在第0周)
%w 一个星期中的第几天(0-6,0是星期天)
%W 和%U基本相同,不同的是%W以星期一为一个星期的开始
%x 本地相应日期
%X 本地相应时间
%y 去掉世纪的年份(00-99)
%Y 完整的年份
%z 用+HHMM或者-HHMM表示距离格林威治的时区偏移(H代表十进制的小时数,M代表十进制的分钟数)
%Z 时区的名字(如果不存在为空字符)