如何在python系列中处理多个日期字符串格式

JL1*_*515 5 python date python-2.7 pandas

我有一个csv文件,我正在尝试完成操作.我创建了一个数据框,其中一列标题为"start_date",其中包含保修开始日期.我遇到的问题是日期的格式不一致.我想知道从今天的日历日期开始的天数和该产品的保修期.

此start_date系列中的两个条目示例:

9/11/15
9/11/15 0:00
Run Code Online (Sandbox Code Playgroud)

如何识别这些格式并对其进行相应处理?

alk*_*djg 7

不幸的是,你只需要尝试它可能的每种格式.如果你举一个例子格式,strptime将尝试所讨论的解析它为你在这里.

代码最终看起来像:

import datetime    

POSSIBLE_DATE_FORMATS = ['%m/%d/%Y', '%Y/%m/%d', etc...] # all the formats the date might be in

for date_format in POSSIBLE_DATE_FORMATS :
    try:
        parsed_date = datetime.strptime(raw_string_date, date_format) # try to get the date
        break # if correct format, don't test any other formats
    except ValueError:
        pass # if incorrect format, keep trying other formats
Run Code Online (Sandbox Code Playgroud)