我在python中有两个字符串。
time_array1='09-JAN-2014 01:19'
time_array2='09-JAN-2014 01:01'
我需要找到时差,我正在做:
print time_array1
print time_array2
FMT = '%d-%m-%Y %H:%M'
datetime_object1= datetime.datetime.strptime(time_array1, FMT)
print datetime_object1
datetime_object2= datetime.datetime.strptime(time_array2, FMT)
print datetime_object2
diff=datetime_object1 - datetime_object2
print diff
但是我收到以下错误:
datetime_object1= datetime.datetime.strptime(time_array1, FMT)
AttributeError: type object 'datetime.datetime' has no attribute 'strptime'
我有什么替代方法可以做到这一点。似乎python库没有strptime
属性。
答案 0 :(得分:1)
在python 2.5中添加了strptime
方法;如果您使用的是旧版本,请改用以下代码:
import datetime, time
datetime_object1 = datetime.datetime(*time.strptime(time_array1, FMT)[:6])
您的月份是缩写,请使用%b
来解析而不是%m
。
演示:
>>> import datetime, time
>>> time_array1='09-JAN-2014 01:19'
>>> time_array2='09-JAN-2014 01:01'
>>> FMT = '%d-%b-%Y %H:%M'
>>> datetime.datetime(*time.strptime(time_array1, FMT)[:6])
datetime.datetime(2014, 1, 9, 1, 19)
>>> datetime.datetime(*time.strptime(time_array2, FMT)[:6])
datetime.datetime(2014, 1, 9, 1, 1)