python中各类时间的计算

python获取当前系统时间:

nowTime=time.localtime()

 

获取当前系统日期:

nowDate=datetime.datetime(nowTime[0],nowTime[1],nowTime[2])

 

日期格式转换:

baseTime="20121012" #转换成2012-10-12

mouth = baseTime[4:6]
year = baseTime[0:4]
day = baseTime[6:8]
Destime = year +"-"+mouth+"-"+day

 

获取当前系统时间,并转换成字符串类型:
curTime = time.strftime("%Y-%m-%d %X", time.localtime(time.time()))

 

计算给定时间delta天后或delta天前的时间:

baseTime="20121012"               #字符串日期

delta=3                                       #计算3天后的日期,如果是delta=-3,计算3天前的日期
d1 = datetime.datetime(string.atoi(baseTime[0:4]),string.atoi(baseTime[4:6]),string.atoi(baseTime[6:8]))
d2 = d1 + datetime.timedelta(days = delta)
deltaDate=d2.strftime("%Y%m%d") 

 

字符串转换成时间 string -> time 和 time  -> string  和 time ->  datetime:

date="2012-04-05"

print  type(date)                  #查看date的类型<type 'str'>

date=time.strptime(date,"%Y-%m-%d")                           #字符串string类型时间转换成time类型时间

print  type(date)                 #查看date的类型<type 'time.struct_time'>

date=time.strftime("%Y-%m-%d",date)                             #time类型时间转换成字符串string类型时间

print type(date) #查看date的类型<type 'str'>

 

date="2012-04-05"

date=time.strptime(date,"%Y-%m-%d")                            #字符串string类型时间转换成time类型时间

print type(date) #查看date的类型<type 'time.struct_time'>

date=datetime.datetime(date[0],date[1],date[2])               #time类型时间转换成datetime类型时间

print type(date) #查看date的类型<type 'datetime.datetime'>

 

计算两个日期之间的时间查:

d1 = datetime.datetime(2005, 2, 16)
d2 = datetime.datetime(2004, 12, 31)

# 结果:47
print (d1 - d2).days

#上例演示了计算两个日期相差天数的计算。

starttime = datetime.datetime.now()
....
endtime = datetime.datetime.now()
print (endtime - starttime).seconds

#上例演示了计算运行时间的例子,以秒进行显示。

d1 = datetime.datetime.now()
d3 = d1 + datetime.timedelta(days =10)

print str(d3)
print d3.ctime()

# 上例演示了计算当前时间向后10天的时间。
# 如果是小时 days 换成 hours

 

posted @ 2013-09-10 09:32  gxcherie  阅读(1197)  评论(0编辑  收藏  举报