TypeError:timedelta days组件的不支持类型:datetime.datetime

时间:2012-07-24 11:06:28

标签: python

我正在尝试在函数中执行一些日期算术。

from datetime import datetime, timedelta

def foo(date1, summing_period):
    current_period_start_date = date1 - timedelta(days=summing_period)
    # Line above causes the error:
    # TypeError: unsupported type for timedelta days component: datetime.datetime

第一个arg是日期时间obj,第二个arg是整数

导致此错误的原因是什么,我该如何解决?

1 个答案:

答案 0 :(得分:5)

summing_period应该是一个整数(表示天数),而不是datetime个对象。

>>> timedelta(days=datetime.now())
TypeError: unsupported type for timedelta days component: datetime.datetime

>>> timedelta(days=5)
datetime.timedelta(5)