【发布时间】:2014-01-05 13:11:02
【问题描述】:
我花了一些时间试图弄清楚如何获得时间值之间的时间增量。唯一的问题是其中一个时间存储在文件中。所以我有一个字符串,本质上是str(datetime.datetime.now()) 和datetime.datetime.now()。
具体来说,我在获取 delta 时遇到问题,因为其中一个对象是日期时间对象,另一个是字符串。
我认为答案是我需要将字符串返回到 datetime 对象中才能使 delta 工作。
我查看了与此相关的其他一些 Stack Overflow 问题,包括以下内容:
Python - Date & Time Comparison using timestamps, timedelta
Comparing a time delta in python
Convert string into datetime.time object
Converting string into datetime
示例代码如下:
f = open('date.txt', 'r+')
line = f.readline()
date = line[:26]
now = datetime.datetime.now()
then = time.strptime(date)
delta = now - then # This does not work
谁能告诉我哪里出错了?
作为参考,前 26 个字符是从文件的第一行获取的,因为这是我存储时间的方式,例如
f.write(str(datetime.datetime.now())
这会写出以下内容: 2014-01-05 13:09:42.348000
【问题讨论】:
-
感谢所有回复。问题已解决,再次感谢。