转换日期对象中的字符串(包含其他字符串)- Python

Convert String (with other string in) in Date Object - Python

我正在尝试将此法语字符串:'20 avril 2018 - Arrivée définitive' 转换为日期对象。

Jour = ['20 avril 2018 - Arrivée définitive', '21 septembre 2018 - Arrivée définitive', '1 décembre 2019 - Arrivée définitive']

我试过了:

import dateparser # $ pip install dateparser

for date_string in Jour:
    print(dateparser.parse(date_string).date())

但是我有这个错误:

AttributeError: 'NoneType' object has no attribute 'date'

预先感谢您的帮助。

我希望这会对某人有所帮助。

正如您在 documentation 中所读到的 parse 函数 returns datetime representing parsed date if successful, else returns None 因此在循环时,解析函数返回了 None 您试图使用 date 函数导致错误。

我不确定这是否有帮助,但如果您在控制台中查看:

>>> import dateparser
>>> dateparser.parse("20 avril 2018 - Arrivée définitive")
>>> dateparser.parse("21 septembre 2018 - Arrivée définitive")
>>> dateparser.parse("21 septembre 2018")
datetime.datetime(2018, 9, 21, 0, 0)
>>>

所以字符串“21 septembre 2018”解析得很好,但“21 septembre 2018 - Arrivée définitive”解析为 None(在这种情况下,没有打印的意思是 None