Python日期格式

时间:2018-04-18 09:11:52

标签: python date

如何根据YYYY-MM-DD,YYYY / MM / DD和DD.MM.YYYY获取日期并返回YYYY-MM-DD的功能? 我已经尝试了一些适用于其中一种格式的方法,但不是其他方式

2 个答案:

答案 0 :(得分:0)

很难用一行尝试所有,所以你可以尝试这样:

from datetime import datetime
dt = "30-4-1994"
for fmt in ('%Y-%m-%d', '%Y/%m/%d', '%d.%m.%Y'):
    try:
        example_time =  datetime.strptime(dt, fmt).date()
        print(example_time)
    except ValueError:
        continue

O / P将采用YYYY-MM-DD格式,如下所示:

1994-04-30

答案 1 :(得分:0)

只需在输入中打开分隔符字符串,即可选择合适的datetime.strptime()格式:

from datetime import datetime

FORMATS = {'-': '%Y-%m-%d', '/': '%Y/%m/%d', '.': '%d.%m.%Y'}
def convertdate(ds, outputformat='%Y-%m-%d', _formats=FORMATS):
    for delim, format in _formats.items():
        if delim in ds:
            return datetime.strptime(ds, format).strftime(outputformat)

演示:

>>> convertdate('2012-03-12')
'2012-03-12'
>>> convertdate('2012/03/12')
'2012-03-12'
>>> convertdate('12.03.2012')
'2012-03-12'