python之时间日期time

常用的时间函数如下
获取当前日期:time.time()
获取元组形式的时间戳:time.local(time.time())
格式化日期的函数(基于元组的形式进行格式化):time.asctime(time.local(time.time()))

import time 
timesone=time.time()
timestwo=time.localtime(time.time())
timesthr=time.asctime(time.localtime(time.time()))
print(timesone)
print(timestwo)
print(timesthr)
结果:
1535098139.5541162
time.struct_time(tm_year=2018, tm_mon=8, tm_mday=24, tm_hour=16, tm_min=8, tm_sec=59, tm_wday=4, tm_yday=236, tm_isdst=0)
Fri Aug 24 16:08:59 2018

time.strftime(format[,t])  格式化日期

%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

print (time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
print (time.strftime("%a %b %d %H:%M:%S %Y", time.localtime()))
a = "Fri Aug 24 16:14:11 2018"
print (time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y")))
结果:
[python@master time]$ python3 2.py 
2018-08-24 16:18:20
Fri Aug 24 16:18:20 2018
1535098451.0

time.strptime(str,fmt='%a %b %d %H:%M:%S %Y') 根据fmt的格式把一个时间字符串解析为时间元组

import time
struct_time = time.strptime("24 Aug 18", "%d %b %y")
print ("返回元组: ", struct_time)
结果:
[python@master time]$ python3 3.py 
返回元组:  time.struct_time(tm_year=2018, tm_mon=8, tm_mday=24, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=4, tm_yday=236, tm_isdst=-1)

time.mktime(tupletime) 接受时间元组并返回时间辍(1970纪元后经过的浮点秒数)

import time

t = (2009, 2, 17, 17, 3, 38, 1, 48, 0)
secs = time.mktime( t )
print ("time.mktime(t) : %f" %  secs)
print ("asctime(localtime(secs)): %s" % time.asctime(time.localtime(secs)))
结果:
[python@master time]$ python3 4.py 
time.mktime(t) : 1234861418.000000
asctime(localtime(secs)): Tue Feb 17 17:03:38 2009

time.sleep([secs]),单位为秒

计算时间间隔

import time
def calc_time():
    timeArray = time.localtime(time.time())
    time.sleep(5)
    timestamp = time.mktime(timeArray)
    print('时间相差:%d' % int(timestamp-time.time()))
calc_time()

结果;
[python@master time]$ python3 5.py 
时间相差:-5

 Time模块包含了以下2个非常重要的属性:

1.time.timezone 属性time.timezone是当地时区(未启动夏令时)距离格林威治的偏移秒数(>0,美洲;<=0大部分欧洲,亚洲,非洲)。

2.time.tzname    属性time.tzname包含一对根据情况的不同而不同的字符串,分别是带夏令时的本地时区名称,和不带的

import time
print(time.timezone)
print(time.tzname)
结果:
[python@master time]$ python3 6.py 
-28800
('CST', 'CST')

 

今天的你有何感想?

posted @ 2018-08-24 19:07  醉城、  阅读(263)  评论(0编辑  收藏  举报