我试图找出datetime
和time
模块之间的差异,以及每个模块的用途。
我知道datetime
提供日期和时间。 time
模块有什么用?
可以理解的例子和关于时区的差异尤其令人感兴趣。
答案 0 :(得分:80)
time
模块主要用于处理unix时间戳;表示为自unix时代以来的秒数浮点数。 datetime
模块可以支持许多相同的操作,但提供了一组面向对象的类型,并且对时区也有一些有限的支持。
答案 1 :(得分:4)
当您只需要特定记录的时间时,可以使用时间模块 - 比如让我们说每天的交易都有一个单独的表/文件,那么您只需要时间。 但是,时间数据类型通常用于在2个时间点之间存储时间差异。
这也可以使用日期时间来完成,但如果我们只处理特定日期的时间,则可以使用时间模块。
Datetime用于存储记录的特定数据和时间。就像在租赁公司。截止日期是日期时间数据类型。
答案 2 :(得分:4)
如果您对时区感兴趣,则应考虑使用pytz。
答案 3 :(得分:4)
time
以防止DST模糊。专门使用系统time
模块而不是datetime
模块prevent ambiguity issues with daylight savings time (DST)。
转换为任何时间格式(包括当地时间)非常简单:
import time
t = time.time()
time.strftime('%Y-%m-%d %H:%M %Z', time.localtime(t))
'2019-05-27 12:03 CEST'
time.strftime('%Y-%m-%d %H:%M %Z', time.gmtime(t))
'2019-05-27 10:03 GMT'
time.time()
是一个浮点数,表示自系统纪元以来的秒数。 time.time()
非常适合明确的时间戳。
如果系统另外运行network time protocol (NTP)dæmon,最终会有一个相当稳固的时基。
以下是time
模块的documentation。