繁体   English   中英

pymongo datetime TypeError:必须为整数

[英]pymongo datetime TypeError: an integer is required

我有以下代码:

from datetime import datetime as dt
import time
import datetime

TODAY_DATE = datetime.date.today()
THREE_MONTH = datetime.timedelta(weeks=12)
FOUR_MONTH = datetime.timedelta(weeks=16)
START_DAY = TODAY_DATE - FOUR_MONTH
END_DAY = TODAY_DATE - THREE_MONTH 

x = agent_coll_obj.find({ "created_at": {"$gte" : datetime.datetime(START_DAY), 
                                             "$lt": datetime.datetime(END_DAY) }})
print x

我收到以下错误:

Traceback (most recent call last):
  File "main.py", line 212, in <module>
    program.runProgram()
  File "main.py", line 61, in runProgram
    report.RcreateReport()
  File "/Users/dwstein_old/Dropbox/hkpr_reports/report.py", line 105, in RcreateReport
    x = agent_coll_obj.find({ "created_at": {"$gte" : datetime.datetime(START_DAY), 
TypeError: an integer is required

我正在尝试将此SO问题用作指导。 我试图只使用整个日期,而不是每个日期的年,月和日都有变量。

from datetime import datetime as dt
import time
import datetime

TODAY_DATE = datetime.date.today()
THREE_MONTH = datetime.timedelta(weeks=12)
FOUR_MONTH = datetime.timedelta(weeks=16)
START_DAY = TODAY_DATE - FOUR_MONTH
END_DAY = TODAY_DATE - THREE_MONTH 

x = agent_coll_obj.find({ "created_at": {"$gte" : START_DAY, 
                                         "$lt": END_DAY }})
print x

您可以像这样使用datetime.datetime:

In [2]: datetime.datetime?
Docstring:
datetime(year, month, day[, hour[, minute[, second[, microsecond[,tzinfo]]]]])

The year, month and day arguments are required. tzinfo may be None, or an
instance of a tzinfo subclass. The remaining arguments may be ints or longs.
File:      /usr/local/opt/pyenv/versions/2.7.8/lib/python2.7/lib-dynload  /datetime.so
Type:      type

您需要为datetime.datetime函数指定年,月,日。

暂无
暂无

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

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