#271 Unlock the mysteries of time, Python's datetime that is!
Talk Python To Me
English - July 04, 2020 08:00 - 1 hour - 29.9 MB - ★★★★★ - 418 ratingsTechnology Homepage Download Apple Podcasts Google Podcasts Overcast Castro Pocket Casts RSS feed
Time is a simple thing, right? And working with it in Python is great. You just import datetime and then (somewhat oddly) use the datetime class from that module.
Oh except, there are times with timezones, and times without. And why is there a total_seconds() but not total_minutes(), hours() or days() on timedelta? How about computing the number of weeks?
What if you wanted to iterate over the next 22 workdays, skipping weekends?
Ok, we'd better talk about time in Python! Good thing Paul Ganssle is here. He's a core developer who controls time in CPython.
Links from the show
Talk Python Training Humble Bundle: humblebundle.com
Paul on Twitter: @pganssle
Paul's Blog: blog.ganssle.io
Paul's Website: ganssle.io
Datetime blog posts
pytz: The fastest footgun in the West: blog.ganssle.io
Stop using utcnow and utcfromtimestamp: blog.ganssle.io
A curious case of non-transitive datetime comparison: blog.ganssle.io
Semantics of timezone-aware datetime arithmetic: blog.ganssle.io
PEPs
PEP 495: Local time disambiguation: python.org
PEP 615: Support for the IANA Time Zone Database in the Standard Library: python.org
zoneinfo documentation in Python 3.9: docs.python.org
backports.zoneinfo: pypi.org
pytz_deprecation_shim: readthedocs.io
Extra libraries
dateutil: readthedocs.io
break-my-python: pypi.org
arrow: readthedocs.io
pendulum: pendulum.eustace.io
Indiana Time Zones: google.com
Sponsors
Brilliant
Talk Python Training