python利用datetime模块计算时间差

今天写了点东西,要计算时间差,我记得去年写过,于是今天再次mark一下,以免自己忘记

In [27]: from datetime import datetime

In [28]: a=datetime.now()

In [29]: b=datetime.now()

In [32]: a
Out[32]: datetime.datetime(2015, 4, 7, 4, 30, 3, 628556)

In [33]: b
Out[33]: datetime.datetime(2015, 4, 7, 4, 34, 41, 907292)

In [34]: str(a)                   字符串的转换,用户储存到文本或者数据库
Out[34]: '2015-04-07 04:30:03.628556'

In [35]:datetime.strptime(str(a),"%Y-%m-%d %H:%M:%S.%f")
Out[35]:datetime.datetime(2015, 4, 7, 4, 30, 3, 628556)

In [36]: (b-a)
Out[36]: datetime.timedelta(0, 278, 278736)

In [37]: (b-a).seconds              时间差的计算,单位为秒
Out[37]: 278

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)等。

以上所述就是本文的全部内容了,希望大家能够喜欢。

(0)

相关推荐

  • python中关于时间和日期函数的常用计算总结(time和datatime)

    1.获取当前时间的两种方法: 复制代码 代码如下: import datetime,timenow = time.strftime("%Y-%m-%d %H:%M:%S")print nownow = datetime.datetime.now()print now 2.获取上个月最后一天的日期(本月的第一天减去1天) 复制代码 代码如下: last = datetime.date(datetime.date.today().year,datetime.date.today().mon

  • Python基于time模块求程序运行时间的方法

    本文实例讲述了Python基于time模块求程序运行时间的方法.分享给大家供大家参考,具体如下: 要记录程序的运行时间可以利用Unix系统中,1970.1.1到现在的时间的毫秒数,这个时间戳轻松完成. 方法是程序开始的时候取一次存入一个变量,在程序结束之后取一次再存入一个变量,与程序开始的时间戳相减则可以求出. Python中取这个时间戳的方法为引入time类之后,使用time.time();就能够拿出来.也就是Java中的System.currentTimeMillis(). 由于Python

  • python运行时间的几种方法

    最早见过手写的,类似于下面这种: import datetime def time_1(): begin = datetime.datetime.now() sum = 0 for i in xrange(10000000): sum = sum + i end = datetime.datetime.now() return end-begin print time_1() 输出如下: ➜  Python python time_1.py 0:00:00.280797 另外一种方法是使用tim

  • python简单实现计算过期时间的方法

    本文实例讲述了python简单实现计算过期时间的方法.分享给大家供大家参考.具体如下: def time_passed(value): now = datetime.now() past = now - value if past.days: return u'%s天前' % past.days mins = past.seconds / 60 if mins < 60: return u'%s分钟前' % mins hours = mins / 60 return u'%s小时前' % hou

  • Python计算程序运行时间的方法

    本文实例讲述了Python计算程序运行时间的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: import time def start_sleep():     time.sleep(3) if __name__ == '__main__':     #The start time     start = time.clock() #A program which will run for 3 seconds     start_sleep() #The End time

  • python记录程序运行时间的三种方法

    python记录程序运行时间的三种方法              这里提供了python记录程序运行时间的三种方法,并附有实现代码,最后进行比较,大家参考下: 方法1 import datetime starttime = datetime.datetime.now() #long running endtime = datetime.datetime.now() print (endtime - starttime).seconds 方法 2 start = time.time() run_f

  • python计算程序开始到程序结束的运行时间和程序运行的CPU时间

    执行时间 方法1 复制代码 代码如下: import datetimestarttime = datetime.datetime.now()#long runningendtime = datetime.datetime.now()print (endtime - starttime).seconds 方法 2 复制代码 代码如下: start = time.time()run_fun()end = time.time()print end-start 方法3 复制代码 代码如下: start

  • 10种检测Python程序运行时间、CPU和内存占用的方法

    在运行复杂的Python程序时,执行时间会很长,这时也许想提高程序的执行效率.但该怎么做呢? 首先,要有个工具能够检测代码中的瓶颈,例如,找到哪一部分执行时间比较长.接着,就针对这一部分进行优化. 同时,还需要控制内存和CPU的使用,这样可以在另一方面优化代码. 因此,在这篇文章中我将介绍7个不同的Python工具,来检查代码中函数的执行时间以及内存和CPU的使用. 1. 使用装饰器来衡量函数执行时间 有一个简单方法,那就是定义一个装饰器来测量函数的执行时间,并输出结果: import time

  • python计算时间差的方法

    本文实例讲述了python计算时间差的方法.分享给大家供大家参考.具体分析如下: 1.问题: 给定你两个日期,如何计算这两个日期之间间隔几天,几个星期,几个月,几年? 2.解决方法: 标准模块datetime和第三方包dateutil(特别是dateutil的rrule.count方法)能非常简单迅速的帮你解决这个问题. from dateutil import rrule import datetime def weeks_between(start_date, end_date): week

  • python使用datetime模块计算各种时间间隔的方法

    本文实例讲述了python使用datetime模块计算各种时间间隔的方法.分享给大家供大家参考.具体分析如下: python中通过datetime模块可以很方便的计算两个时间的差,datetime的时间差单位可以是天.小时.秒,甚至是微秒,下面的代码就演示了datetime模块在计算时间差时的强大功能 # -*- coding: utf-8 -*- #!/usr/bin/env python import datetime #datetime一般的时间计算 d1 = datetime.datet

随机推荐