python

导航

python时间处理

来源 :中华考试网 2020-10-27

  在实际中遇到一个时间处理问题,需要将 Sep 06, 2014 19:30 (UTC 时间) 和 当前时间比较早晚,知道 此 2014-09-06 19:30 格式时间的运算。因此,在处理时,就想

  先将sep 格式时间转化成 后面一个格式的时间样子,没有找到相关函数,于是自己简单的写了个程序,仅记于此,以备查询

  代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# -*- coding: utf-8 -*- 
from datetime import date
from datetime import datetime
from datetime import timedelta
  
# # #如果是返回当前时间,可以简单的写成
# # time.localtime()
# # #这个返回UTC时间
# # time.gmtime()
# lt = time.localtime()
# tm = time.gmtime()
# ft = time.strftime('%Y-%m-%d %H-%M',lt)
# ft2 = time.strftime('%Y-%m-%d %H:%M',tm)
# print ft, ft2
# print '--------------------------------------------------------'
# now = datetime.datetime.now()
# now = now.replace(day = 1)
# print now
# print now.time()
#
# mytime = ['2014-09-06 20:19']
# #mytime2 = '2014-10-09 14:32'
# str = "".join(mytime)
# print str
# retime  = datetime.strptime(str,'%Y-%m-%d %H:%M')
# print retime
# retime = retime +timedelta(hours = 8)
# print retime
#
# tdtime = datetime.now()
# print tdtime
# if retime <= tdtime - timedelta(days = 7):
#     print "too early"
#
# #Sep 06, 2014 19:30
  
monthdic = {'Jan':'01''Feb':'02''Mar':'03''Apr':'04''May':'05''Jun':'06''Jul':'07''Aug':'08''Sep':'09''Oct':'10''Nov':'11''Dec':'12'}
def time_format(timestr):
    timestr = timestr.replace(',','')
    #print timestr
    timelist = timestr.split()
    #print timelist
    mon = "".join(timelist[0])
    #print  mon
    timelist[0= monthdic[mon]
    #print timelist
    mytime = "".join(timelist[2])+'-'+"".join(timelist[0])+'-'+"".join(timelist[1])+' '+ "".join(timelist[3])
    return mytime
if __name__ == '__main__':
    timestr = 'Sep 06, 2014 19:30'
    str = time_format(timestr)
    print str      
    mytime  = datetime.strptime(str,'%Y-%m-%d %H:%M'
    print mytime
    mytime = mytime +timedelta(hours = 8)
    print mytime  
    tdtime = datetime.now()
    print tdtime
    if mytime <= tdtime - timedelta(days = 7):
        print "too early"

分享到

相关资讯