pytz.utc 和 dt.timezone.utc 有什么区别?

What's the difference between pytz.utc and dt.timezone.utc?

我正在编写一个库,我不想要求 pytz,因为该库本身不知道或不关心时区(它以 Unix 时间戳的形式读取和写入数据,它没有任何与它们关联的时区信息)。我总是 return 使用 dt.timezone.utc 的新时间戳作为已知日期时间(即类似于 dt.datetime(..., tzinfo=dt.timezone.utc))。

这些时间戳是否会像您从 pytz.localize(...) 获得的那样与 pytz 时间戳进行明智的交互(例如,日期时间减法产生正确的结果),还是我需要改用 pytz.utc

可以使用datetime.timezone.utc。不需要使用pytz.utc,只配合pytz个时区。

utc 时区具有固定的 utc 偏移量(零,始终)。这样的 tzinfo 对象应该适用于任何 tzinfo 实现。