将日期和时间以时间戳的形式存储在数据库中是很常见的做法。Unix 时间戳是指特定日期与 1970 年 1 月 1 日 UTC 时间之间的秒数。
我们可以简单地使用 datetime
模块中的 fromtimestamp()
方法从 UNIX 时间戳获取日期。
Python 时间戳转 datetime
from datetime import datetime
# timestamp is number of seconds since 1970-01-01
timestamp = 1545730073
# convert the timestamp to a datetime object in the local timezone
dt_object = datetime.fromtimestamp(timestamp)
# print the datetime object and its type
print("dt_object =", dt_object)
print("type(dt_object) =", type(dt_object))
输出
dt_object = 2018-12-25 09:27:53 type(dt_object) = <class 'datetime.datetime'>
在这里,我们从 datetime 模块导入了 datetime
类。
然后,我们使用了 datetime.fromtimestamp()
类方法,它返回本地日期和时间(一个 datetime 对象)。这个对象被存储在 dt_object 变量中。
注意: 我们可以使用 strftime() 方法,从一个 datetime
对象轻松地创建一个表示日期和时间的字符串。
Python datetime 转时间戳
在 Python 中,我们可以使用 datetime.timestamp()
方法从一个 datetime 对象获取时间戳。例如,
from datetime import datetime
# current date and time
now = datetime.now()
# convert from datetime to timestamp
ts = datetime.timestamp(now)
print("Timestamp =", ts)
输出
Timestamp = 1672138646.118119
这里,datetime.timestamp()
方法接受一个 datetime 对象作为参数,并返回一个 Unix 时间戳。
另请阅读