dateutil
is a Python library that provides powerful utilities for parsing, formatting, and manipulating dates and times. It is a popular choice for working with dates and times in Python, especially when dealing with complex date and time formats. The library is not included in the Python standard library, so you may need to install it separately using a package manager like pip
.
Here are some common tasks that you can perform using the dateutil
library:
- Parsing Dates and Times:
dateutil
allows you to parse dates and times from strings with varying formats. It can handle a wide range of input formats and automatically detect the date and time components.
from dateutil import parser
date_str = "2023-10-05 15:30:00"
dt = parser.parse(date_str)
- Formatting Dates and Times: You can format
datetime
objects into strings with specific formats using thestrftime
function.
from dateutil import parser
dt = parser.parse("2023-10-05 15:30:00")
formatted_date = dt.strftime("%Y-%m-%d %H:%M:%S")
- Calculating Time Differences:
dateutil
allows you to calculate time differences betweendatetime
objects, including handling time zones and daylight saving time.
from dateutil import parser
from dateutil.relativedelta import relativedelta
dt1 = parser.parse("2023-10-05 15:30:00")
dt2 = parser.parse("2023-10-06 12:45:00")
time_difference = relativedelta(dt2, dt1)
- Timezone Handling:
dateutil
provides tools for working with time zones, including parsing and formatting datetimes with timezone information.
from dateutil import parser, tz
dt_str = "2023-10-05 15:30:00 UTC"
dt = parser.parse(dt_str)
utc = tz.tzutc()
dt_with_timezone = dt.replace(tzinfo=utc)
- Working with Intervals: You can also work with intervals or date ranges using the
rrule
module, which provides tools for generating sequences of dates according to various rules.
from dateutil import rrule
from datetime import datetime
start_date = datetime(2023, 10, 1)
end_date = datetime(2023, 10, 10)
date_range = rrule.rrule(rrule.DAILY, dtstart=start_date, until=end_date)
Overall, dateutil
is a versatile library that simplifies many common date and time-related operations in Python. It’s a valuable tool for developers working with date and time data in various applications.