Python日期时间、时间和日历重叠功能

3
每次我想在Python中进行日期相关的操作时,我都会感到困惑。time、datetime和calendar模块之间存在许多重叠的功能。而且,一些你期望集成在一个模块中的功能分散在这三个模块中。当涉及到不同的日期格式如datetime类、timetuple、时间戳、字符串输入等时,情况变得更加复杂。

有没有人知道任何比较这三个模块并以应用场景为导向的好文章或教程。

像这样:

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

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

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


1
80-90%的时间,我不需要“日历”。另外10-20%的时间,我会忘记它的存在... - mgilson
没错,基本上就是这种状态。我最终自己编写了一个DateTime类(主要使用了datetime模块和第三方pytz包),因为我再也受不了了。 - Henry Keiter
2个回答

1

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

Arrow是一个Python库,提供了一种明智、人性化的方法来创建、操作、格式化和转换日期、时间和时间戳。它实现并更新datetime类型,填补了功能上的空白,并提供了一个智能模块API,支持许多常见的创建场景。简而言之,它帮助您使用更少的导入和更少的代码处理日期和时间。


1

《The Times library》旨在简化这个问题。https://github.com/nvie/times

Times是一个小型、极简的Python库,用于处理一次性的时区转换。

它旨在简单明了,但同时对好坏实践有自己的看法。

我没有直接使用过这个库,但听说它很不错。

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

import datetime
import calendar
import pytz

你可以从代码中了解每个库的使用方法。
希望这能帮到你。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接