Sponsors
Become a sponsor-
iPulse AI
Open Agentic Investment Research Platform. Inspect deep multi-agent market forecasts and stock picks.
Listed in editorial order. Click a column header to re-sort the whole list.
Press / to search. Tags open their category. Click a row for details.
Search and filter
Results
| Row number | Tags | |||||
|---|---|---|---|---|---|---|
| 1 | zoneinfo Date and Time | Stdlib | 77,691 | Date and Time Python Language Stdlib | ||
|
(Python standard library) IANA time zone support. Brings the tz database into Python.
|
||||||
| 2 | python-dateutil Date and Time | 1,038,539,581 | 2,641 | Date and Time Python Language | ||
|
Extensions to the standard Python datetime module.
|
||||||
| 3 | dateparser Date and Time | 39,719,561 | 2,860 | Date and Time Python Language | ||
|
A Python parser for human-readable dates in over 200 language locales.
|
||||||
| 4 | pendulum Date and Time | 53,232,668 | 6,680 | Date and Time Python Language | ||
|
Python datetimes made easy.
|
||||||
| 5 | whenever Date and Time | 5,602,588 | 2,414 | Date and Time Python Language | ||
|
A modern datetime library, type-safe and DST-safe, in Rust or pure Python.
|
||||||
No projects match your search.
Try a broader term, or .
Date and Time guide
zoneinfo brings the IANA time zone database to Python, and the datetime docs say its usage is recommended. Attach a ZoneInfo to a datetime through the constructor, replace(), or astimezone(). Some systems, Windows among them, have no IANA database, so if your code runs across platforms, declare a dependency on tzdata.
python-dateutil adds extensions to the standard datetime module; install it as python-dateutil and import it as dateutil. Its parser reads most known formats and returns a datetime even for an ambiguous date. For input like 01/05/09, set dayfirst or yearfirst to match your data. For calendar math, relativedelta takes plural arguments that add and singular ones that replace: months=+1 moves a month ahead, and day=1 jumps to the first. rrule builds recurring dates from iCalendar rules.
dateparser reads relative dates like "two weeks ago" and absolute ones in more than 200 language locales. Its docs say it stands out for scraped pages, logs, and other data from mixed sources, and for letting users type dates in their own words. Call dateparser.parse(), and pass languages when you know them, so it skips language detection. When you parse many dates from one source, use DateDataParser, which remembers the languages it has found.
pendulum's classes are drop-in replacements for the native ones, since they inherit from datetime. Every instance is time zone aware and in UTC by default. Its docs call aware datetimes the preferred and recommended way to use it. For tests, install pendulum[test] and travel in time.
whenever puts exact time and local time in separate types: an instant when only the moment matters, a zoned datetime when the local time matters too. Mixing up naive and aware becomes a type error, and DST is handled in all arithmetic. A standard datetime does no time zone adjustment when you add a timedelta to it. In production, turn whenever's DST warnings into errors with Python's standard warnings filter.
Decide whether you extend datetime or replace it. zoneinfo, python-dateutil, and dateparser all use standard datetime objects, so they work together. pendulum's objects are datetimes too, but code that checks the exact type, like sqlite3 and some database drivers, needs an adapter registered. whenever doesn't subclass datetime at all, so convert to and from standard datetimes where other code needs one.
Contribute
Know a project that belongs here?
Tell us what it does and why it stands out.