0

我正在尝试将日期格式为“06/01/05”(月/日/年)的 CSV 文件读入 App Engine(Python)中的DateProperty(不是 DateTimeProperty)。这是我目前拥有的:

for row in mycsvfiledata:
    obj = MyObject()
    datetemp = row[1]
    cohorttemp = datetime.datetime.strptime(datetemp, "%m/%d/%y")
    obj.cohort_date.month = cohorttemp.month
    obj.cohort_date.day = cohorttemp.day
    obj.cohort_date.year = cohorttemp.year

我得到了错误:[...省略...] obj.cohort_date.month=cohorttemp.month AttributeError:'NoneType'对象没有属性'month'

我也试过:

obj.cohort_date = datetime.date.strptime(datetemp, "%m/%d/%y")

(但 strptime 似乎只生成一个日期时间对象,而不是一个日期对象)

obj.cohort_date = datetime.datetime.strptime(datetemp, "%m/%d/%y")

(但“cohort_date”是 App Engine 中的 DateProperty,当我尝试这样做时,我得到“BadValueError:Property crowd_date must be a date, not a datetime”)

如果我只是将“cohort_date”设置为 DateTimeProperty,这一切都很好,但我不希望这样(出于各种原因)。我很感激这方面的任何指导!

4

1 回答 1

2

datetime实例有一个date()返回相应date实例的方法,所以:

obj.cohort_date = datetime.strptime(datetemp, "%m/%d/%y").date()
于 2012-04-28T17:42:09.680 回答