Python中的时间戳转日期函数
发布时间:2023-06-20 05:24:00
Python中有多种方式将时间戳(以秒为单位的计算机时间)转换为日期。下面我们将介绍一些常用的方法。
1. time模块
Python自带的time模块提供了多种时间处理函数,其中包括将时间戳转换为本地时间的函数:
import time timestamp = 1596378674 # 将时间戳转换为本地时间 local_time = time.localtime(timestamp) print(local_time)
输出结果为:
time.struct_time(tm_year=2020, tm_mon=8, tm_mday=2, tm_hour=19, tm_min=51, tm_sec=14, tm_wday=6, tm_yday=215, tm_isdst=0)
我们可以看到,time.localtime()将时间戳转换为了一个包含年月日时分秒等信息的time.struct_time类型的对象。我们可以利用该对象提取需要的信息:
import time
timestamp = 1596378674
# 将时间戳转换为本地时间
local_time = time.localtime(timestamp)
# 提取年份
year = local_time.tm_year
# 提取月份
month = local_time.tm_mon
# 提取日期
day = local_time.tm_mday
print(f"{year}-{month}-{day}")
输出结果为:
2020-8-2
2. datetime模块
另一种常用的时间处理模块是datetime模块。它提供了datetime类来表示日期时间,以及strftime()函数来将datetime对象转换为字符串。
import datetime
timestamp = 1596378674
# 将时间戳转换为datetime对象
datetime_obj = datetime.datetime.fromtimestamp(timestamp)
# 将datetime对象转换为字符串
date_str = datetime_obj.strftime("%Y-%m-%d %H:%M:%S")
print(date_str)
输出结果为:
2020-08-02 19:51:14
strftime()函数接受一个格式化字符串作为参数,指定日期时间字符串的输出格式。其中%Y、%m、%d、%H、%M、%S分别代表年、月、日、小时、分钟和秒。
3. arrow模块
最后,我们介绍一种第三方时间处理模块——arrow。它提供了轻量级的、易用的API,可以方便地进行时间戳转换等操作。
import arrow
timestamp = 1596378674
# 将时间戳转换为arrow对象
arrow_obj = arrow.get(timestamp)
# 格式化输出日期时间
date_str = arrow_obj.format("YYYY-MM-DD HH:mm:ss")
print(date_str)
输出结果为:
2020-08-02 19:51:14
总结
本文介绍了三种常用的Python时间戳转日期的方法,包括time模块、datetime模块和arrow模块。具体的使用方法需要根据需求选择合适的模块和函数。
