python 如何计算时间差

Python Tip]如何计算时间差

Q:如何方便的计算两个时间的差,如两个时间相差几天,几小时等

A:使用datetime模块可以很方便的解决这个问题,举例如下:

>>> import datetime
>>> d1 = datetime.datetime(2005, 2, 16)
>>> d2 = datetime.datetime(2004, 12, 31)
>>> (d1 – d2).days
47

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

import datetime
starttime = datetime.datetime.now()
#long running
endtime = datetime.datetime.now()
print (endtime – starttime).seconds

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

>>> d1 = datetime.datetime.now()
>>> d3 = d1 + datetime.timedelta(hours=10)
>>> d3.ctime()

上例演示了计算当前时间向后10小时的时间。

其本上常用的类有:datetime和timedelta两个。它们之间可以相互加减。每个类都有一些方法和属性可以查看具体的值,如datetime可以查看:天数(day),小时数(hour),星期几(weekday())等;timedelta可以查看:天数(days),秒数(seconds)等。

8条评论

  1.  

    好文章!!收藏先

  2.  

    新手问题,请问怎样以毫秒显示时间差啊?

  3.  

    一个timedelta对象有days, seconds, microseconds(微秒)

    自已可以计算出来:

    d 为一个timedelta对象

    d.days * 24 * 60 * 60 * 1000 + d.seconds * 1000 + d.microseconds / 1000

    应该是这样吧。

posted @ 2012-03-25 21:21  SophiaTang  阅读(130001)  评论(0编辑  收藏  举报