Используя dateutil.parser.parse, возможно ли вернуть объект времени, если не указана дата? - PullRequest
0 голосов
/ 16 апреля 2020

У меня есть программа, которая выглядит примерно так:

import dateutil.parser
user_date = input("Enter a time or date: ")

#exception handler code goes here
date = dateutil.parser.parse(user_date)
print(date)

Проблема в том, что если пользователь вводит "10:35:15", код будет печатать что-то вроде datetime.datetime(2020, 4, 16, 10, 35, 15). Это не то, что мне нужно, поскольку мне нужно добавить на этот раз к текущему времени, чтобы получить смещение времени и / или даты, введенных пользователем, от текущего времени. Это означает, что код будет выглядеть примерно так:

import dateutil.parser
user_date = input("How long 'till I should do a thing? ")

date = dateutil.parser.parse(user_date)
time_when_thing_needs_to_be_done = datetime.datetime.now() + date

#code to do something when datetime.datetime.now() >= time_when_thing_needs_to_be_done

Что я пробовал

  • Использование аргумента default для dateutil.parser.parse: нельзя указывать дату с годом, месяцем и днем ​​как 0

  • Передача объекта time, как указано выше default аргумент: недопустимый аргумент

Как я могу позволить генерировать объект времени или даты-времени, чтобы код работал независимо от того, вводит ли пользователь время или время и дату?

Заранее спасибо.

...