Dateutil包:两个日期之间以秒为单位的绝对差

2024-05-12 14:00:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用Python和“dateutil”包。我有两个日期“date1”和“date2”,它们是从一些字符串中解析的:

import dateutil.parser
date1 = dateutil.parser.parse(string1,fuzzy=True)
date2 = dateutil.parser.parse(string2,fuzzy=True)

“date1”和“date2”之间的绝对(非负)时间差怎么可能以秒为单位?只有一个号码。


Tags: 字符串importtrueparserparse单位fuzzy号码
2条回答

对时间增量使用total_seconds()方法:

import dateutil.parser
from datetime import datetime

date1 = datetime.now()
date2 = dateutil.parser.parse('2013-11-12 09:00:00',fuzzy=True)

>>> print abs((date1 - date2).total_seconds())
25711599.6705

^{}返回^{}个对象,您可以相互减去这些对象,得到一个^{}对象,这是两次之间的差异。

然后可以使用^{}方法来获取秒数。

diff = date2 - date1
print(diff.total_seconds())

请注意,如果date1在未来比date2更远,那么total_seconds方法将返回一个负数。

相关问题 更多 >