python datetime,时间和日历重叠功能

python datetime, time and calendar overlapping functionalities

每当我想在python中做一些与日期有关的事情时,我都会感到困惑。 时间,日期时间和日历模块之间似乎有很多重叠的功能。 此外,您希望集成在一个模块中的某些功能分布在这三个模块中。 日期时间类,时间表,时间戳,字符串输入等日期格式不同,情况会变得更糟...

有没有人知道比较这三个模块的任何文章或好的教程,也许提供了一个面向用例的方法。

像这样的东西:

要获取当前时间戳,请使用:time.time()

要将timetuple转换为时间戳,请使用:calendar.timegm()

要将datetime转换为timetuple,请使用:datetime.timetuple()


为了完整起见,有一个名为Arrow的库试图解决问题https://arrow.readthedocs.io/en/latest/。

Arrow is a Python library that offers a sensible, human-friendly approach to creating, manipulating, formatting and converting dates, times, and timestamps. It implements and updates the datetime type, plugging gaps in functionality, and provides an intelligent module API that supports many common creation scenarios. Simply put, it helps you work with dates and times with fewer imports and a lot less code.


Times库试图简化这个问题。https://github.com/nvie/times

Times is a small, minimalistic, Python library for dealing with time conversions to and from timezones, for once and for all.

It is designed to be simple and clear, but also opinionated about good and bad practices.

我没有直接使用过该库,但我听说过它很好。

如果查看代码,它会导入这些库:

1
2
3
import datetime
import calendar
import pytz

您可以从代码中了解每个库的用法。

希望这可以帮助。