繁体   English   中英

使用 datetime.timedelta 进行时间计算

[英]Making calculations with time using datetime.timedelta

我正在尝试使用以下代码进行简单的时间计算:

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)

您已经直接从datetime导入了datetime.timedelta

from datetime import timedelta

所以你可以直接使用它:

endtime = time + timedelta(minutes = 5)

您也无法+增加一个datetime.time与对象timedelta ,所以你需要保持它作为一个datetime.datetime通过删除对象.time()

 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

使用datetime.datetime.strftime

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM