79109741

Date: 2024-10-21 11:09:17
Score: 1
Natty:
Report link

I just found out there is a package called pendulum that have better support for ISO8601 formats.

This works exactly as I wanted.

from datetime import datetime, timedelta
import pendulum

interval: pendulum.Interval = pendulum.parse("2024-02-15T12:34:56/P1M16D")

start_date: datetime = interval.start  # 2024-02-15T12:34:56
end_date: datetime = interval.end  # 2024-03-31T12:34:56
time_delta: timedelta = interval.as_timedelta()  # 45 days = 29 (leap year) + 16
Reasons:
  • Has code block (-0.5):
  • Self-answer (0.5):
  • Low reputation (1):
Posted by: JackyCCC