我正在尝试使用以下代码随着时间进行简单的计算:
from datetime import datetime
from datetime import timedelta
time = datetime.strptime('12:00:00', '%H:%M:%S').time()
endtime = time + datetime.timedelta(minutes = 5)
print(type(endtime))
但是,当我运行代码时,出现以下错误:
AttributeError: type object 'datetime.datetime' has no attribute 'timedelta'
也仅使用以下内容将给出错误。我希望任何人都知道解决方案。
endtime = time + timedelta(minutes = 5)
答案 0 :(得分:1)
您已经直接从datetime.timedelta
导入了datetime
,
from datetime import timedelta
因此您可以立即使用它:
endtime = time + timedelta(minutes = 5)
您也不能+
用timedelta
增加datetime.time
对象,因此需要通过删除.time()
将其保留为datetime.datetime
对象:
time = datetime.strptime('12:00:00', '%H:%M:%S')
工作代码:
from datetime import datetime
from datetime import timedelta
time = datetime.strptime('12:00:00', '%H:%M:%S')
endtime = time + timedelta(minutes = 5)
print(type(endtime))
# <class 'datetime.datetime'>
您可以执行此操作的另一种方法是仅将datetime
导入为标准导入:
import datetime
time = datetime.datetime.strptime('12:00:00', '%H:%M:%S')
endtime = time + datetime.timedelta(minutes = 5)
print(type(endtime))
# # <class 'datetime.datetime'>
增加的时间:
print(endtime.strftime('%H:%M:%S'))
# 12:05:00