Python中时间转时间戳核心用datetime或time模块:字符串需先strptime解析再timestamp();datetime对象直接调用timestamp();UTC时间须明确时区以避免偏差。

Python 中把时间转换为时间戳,核心是用 time 或 datetime 模块,关键看你的“时间”是什么格式:是字符串、datetime 对象,还是 struct_time。
比如你有一个日期时间字符串 "2024-05-20 14:30:00",需要先解析成 datetime 对象,再转时间戳:
datetime.strptime() 解析字符串.timestamp() 方法(推荐,自动处理时区)示例:
from datetime import datetime <p>dt_str = "2024-05-20 14:30:00" dt = datetime.strptime(dt_str, "%Y-%m-%d %H:%M:%S") timestamp = dt.timestamp() # 返回浮点数,单位秒 print(timestamp) # 如:1716215400.0
如果你已有 datetime 对象(比如 datetime.now()),直接调用 .timestamp() 即可:
立即学习“Python免费学习笔记(深入)”;
timezone-aware(带时区),结果更准确示例:
from datetime import datetime <p>now = datetime.now() ts = now.timestamp() print(ts)
适合已知是本地时间且格式较固定的情况:
time.strptime() 得到 struct_time
time.mktime() 转为本地时间戳(仅适用于本地时区)示例:
import time <p>t_str = "2024-05-20 14:30:00" t_struct = time.strptime(t_str, "%Y-%m-%d %H:%M:%S") ts = time.mktime(t_struct) # 本地时间戳 print(ts)
如果原始时间是 UTC 字符串(如 "2024-05-20T14:30:00Z"),建议明确指定时区:
datetime.fromisoformat()(Python 3.7+)配合 timezone.utc
dateutil.parser.parse()(需安装 python-dateutil)示例(标准 UTC ISO 格式):
from datetime import datetime, timezone
<p>utc_str = "2024-05-20T14:30:00Z"
dt_utc = datetime.fromisoformat(utc_str.replace("Z", "+00:00"))
ts = dt_utc.timestamp() # 正确转为 UTC 对应的 Unix 时间戳
print(ts)
基本上就这些。优先用 datetime.timestamp(),注意时区含义,字符串记得配对正确的格式码。不复杂但容易忽略时区,一错就差 8 小时 ?
以上就是python怎么把时间转换为时间戳的详细内容,更多请关注php中文网其它相关文章!
python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号