登录
首页 >  文章 >  python教程

Python时间戳转日期的正确方法

时间:2025-11-29 19:36:55 412浏览 收藏

想要学习Python时间戳转日期?本文详解Python时间戳转换日期时间的实用方法,包括最常用的`datetime.fromtimestamp()`将时间戳转换为本地时间,以及如何使用`datetime.utcfromtimestamp()`或结合`timezone.utc`处理时区问题,确保转换的准确性。我们推荐使用`timezone`明确时区设置,避免潜在的时区错误。此外,还介绍了如何利用`strftime()`方法,根据个人需求自定义日期时间的输出格式,例如年-月-日 时:分:秒。掌握这些技巧,轻松玩转Python日期时间处理!

最常用方法是使用datetime.fromtimestamp()将时间戳转为本地时间,如需UTC时间则用datetime.utcfromtimestamp()或结合timezone.utc处理时区,推荐使用timezone明确时区设置,并可用strftime()按需格式化输出。

如何使用python模块将时间戳转时间日期?

使用 Python 将时间戳转换为日期时间,最常用的方法是利用内置的 datetime 模块。时间戳通常是指从 1970-01-01 00:00:00 UTC 开始经过的秒数,也叫 Unix 时间戳。

使用 datetime.fromtimestamp()

这是最直接的方式,将时间戳转为本地时区的日期时间:

示例代码:

from datetime import datetime

timestamp = 1700000000
dt = datetime.fromtimestamp(timestamp)
print(dt) # 输出:2023-11-14 15:33:20(具体取决于本地时区)

转换为 UTC 时间

如果希望得到 UTC 时间而不是本地时间,使用 datetime.utcfromtimestamp()(注意:在较新版本 Python 中推荐使用 utcfromtimestamp 并配合 timezone):

示例代码:

from datetime import datetime

timestamp = 1700000000
dt_utc = datetime.utcfromtimestamp(timestamp)
print(dt_utc) # 输出:2023-11-14 07:33:20

处理时区(推荐方式)

更现代和推荐的做法是使用 timezone 来明确指定时区,避免歧义:

示例代码:

from datetime import datetime, timezone

timestamp = 1700000000
dt_utc = datetime.fromtimestamp(timestamp, tz=timezone.utc)
print(dt_utc) # 带时区信息的 UTC 时间

# 转换为北京时间(UTC+8)<br>
beijing_tz = timezone.utc.offset = timedelta(hours=8)<br>
dt_beijing = dt_utc.astimezone(timezone(timedelta(hours=8)))<br>
print(dt_beijing)
需要额外导入 timedelta:

from datetime import timedelta

格式化输出

你可以使用 strftime() 方法自定义输出格式:

formatted = dt.strftime("%Y-%m-%d %H:%M:%S")
print(formatted) # 如:2023-11-14 15:33:20

常用格式符:
  • %Y:四位年份
  • %m:月份(01-12)
  • %d:日期(01-31)
  • %H:小时(00-23)
  • %M:分钟(00-59)
  • %S:秒(00-59)

基本上就这些。用 datetime.fromtimestamp() 最简单,加时区更准确,按需选择格式输出即可。

到这里,我们也就讲完了《Python时间戳转日期的正确方法》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于Python,时间戳,时区,日期时间,datetime模块的知识点!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>