Преобразовать французскую строку (с другой строкой в) в объекте Date - Python - PullRequest
1 голос
/ 31 января 2020

Я пытаюсь преобразовать эту французскую строку: '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'

Заранее благодарю за помощь.

Я надеюсь, что это кому-нибудь поможет.

1 Ответ

3 голосов
/ 31 января 2020

Как вы можете прочитать в документации Функция parse возвращает 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 сентября 2018" хорошо разбирается, а "21 сентября 2018 - прибытие определенное" - как None (ничего не напечатано означает None в данном случае)

...