使用 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.timedelta
directly from datetime
:
from datetime import timedelta
所以你可以直接使用它:
endtime = time + timedelta(minutes = 5)
您也不能 +
通过删除 .time()
来增加 datetime.time
object with timedelta
, so you need to keep it as a 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
我正在尝试使用以下代码对时间进行简单计算:
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.timedelta
directly from datetime
:
from datetime import timedelta
所以你可以直接使用它:
endtime = time + timedelta(minutes = 5)
您也不能 +
通过删除 .time()
来增加 datetime.time
object with timedelta
, so you need to keep it as a 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