Home > Backend Development > Python Tutorial > python利用datetime模块计算时间差

python利用datetime模块计算时间差

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-06-10 15:08:10
Original
1521 people have browsed it

今天写了点东西,要计算时间差,我记得去年写过,于是今天再次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
Copy after login

Q:如何方便的计算两个时间的差,如两个时间相差几天,几小时等
A:使用datetime模块可以很方便的解决这个问题,举例如下:

>>> import datetime
>>> d1 = datetime.datetime(2005, 2, 16)
>>> d2 = datetime.datetime(2004, 12, 31)
>>> (d1 - d2).days
47
Copy after login

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

import datetime
starttime = datetime.datetime.now()
#long running
endtime = datetime.datetime.now()
print (endtime - starttime).seconds
Copy after login

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

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

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

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

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

Related labels:
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template