📜  unix 到 datetime - Shell-Bash (1)

📅  最后修改于: 2023-12-03 14:48:13.542000             🧑  作者: Mango

将Unix时间戳转换为Python中的datetime对象

当涉及到时间处理时,Unix时间戳是一个常见的概念。Unix时间戳指的是 1970 年 1 月 1 日 00:00:00 UTC 以来经过的秒数,它是 Unix 操作系统用于记录时间的标准方式。虽然 Unix 时间戳有其用途,但是大多数人通常喜欢将时间表示为日期和时间格式。在 Python 中,我们可以使用 datetime 模块将 Unix 时间戳转换为 datetime 对象。

将Unix时间戳转换为datetime对象

以下是将 Unix 时间戳转换为 datetime 对象的示例:

import datetime

timestamp = 1619692120
dt_object = datetime.datetime.fromtimestamp(timestamp)

print("datetime对象 =", dt_object)

在上面的代码中,我们传递 Unix 时间戳(1619692120)给 fromtimestamp() 方法,该方法将时间戳转换为 datetime 对象。我们使用 print() 函数将 datetime 对象输出到控制台。

输出结果
datetime对象 = 2021-04-29 11:48:40
将本地时间戳转换为datetime对象

如果 Unix 时间戳是本地时间而不是 UTC 时间,则应该使用本地日期和时间将时间戳转换为 datetime 对象。以下是将本地时间戳转换为 datetime 对象的示例:

import datetime

timestamp = 1619692120
dt_object = datetime.datetime.fromtimestamp(timestamp)

print("datetime对象(本地)=", dt_object)

在上面的代码中,我们使用 fromtimestamp() 方法将时间戳转换为 datetime 对象,该方法默认将时间戳解释为 UTC 时间。但是,我们可以使用 localtime() 方法将时间戳解释为本地时间。

import time
import datetime

timestamp = 1619692120
dt_object = datetime.datetime.fromtimestamp(timestamp)

print("datetime对象(本地)=", dt_object)

local_dt_object = dt_object.replace(tzinfo=datetime.timezone.utc).astimezone(tz=None)
print("datetime对象(本地调整后)=", local_dt_object)

在上面的代码中,我们使用 replace() 方法将时区从 UTC 转换为本地时区。

输出结果
datetime对象(本地)= 2021-04-29 11:48:40
datetime对象(本地调整后)= 2021-04-29 19:48:40

以上就是将 Unix 时间戳转换为 datetime 对象的方法。使用这个方法,我们可以很容易地将 Unix 时间戳转换为 datetime 对象,并以我们希望的日期和时间格式进行显示。