我正在使用Solr和Python对我的文件进行索引,并且我正在处理日期。我有一个像30/01/2013 (ddmmyyy)和01/30/2013 (mmddyyy)这样的字符串日期。如何将这些类型的日期转换为Solr日期格式?
我一直在用这样的方式来转换
dt = datetime.combine(item[index_field], time())
value_str = dt.isoformat() + 'Z'但收到错误消息combine() argument 1 must be datetime.date, not str。
发布于 2013-05-12 18:49:57
您必须首先将字符串解析为日期(使用datetime.datetime.strptime() class method,然后使用,然后使用与time()组合
format = '%m/%d/%Y' if month_first else '%d/%m/%Y'
datetime.combine(datetime.strptime(item[index_field], format), time())其中month_first是一个布尔值,它告诉您选择哪种格式。
从形式上讲,datetime.combine()接受datetime.date对象作为第一个参数,但实际上它也接受datetime.datetime实例。(否则必须添加一个.date()调用,以便从.strptime()返回的datetime.datetime实例中获取datetime.date对象)。
https://stackoverflow.com/questions/16506512
复制相似问题