python - 如何在 Python 中将 HH:MM:SS 转换为 time.time() 对象
问题描述
我需要将HH:MM:SS
格式转换为time.time()
对象。有什么办法吗?
这是我的HH:MM:SS
格式化时间:
a = '14:37:29'
我想将其转换为time.time()
对象,例如:
a = 1600256249
这是可以实现的吗?如果不是,我应该尝试什么?希望你能帮忙。
解决方案
要获取 UNIX 时间,您需要添加一个日期。例如,您可以将时间字符串与今天的日期结合起来:
from datetime import datetime, timezone
s = '14:37:29'
today = datetime.today() # 2020-09-16
# make a datetime object with today's date
dt = datetime.combine(today, datetime.strptime(s, '%H:%M:%S').time())
# make sure it's in UTC (optional)
dt = dt.replace(tzinfo=timezone.utc)
# get the timestamp
ts = dt.timestamp()
print(ts)
# 1600267049.0
您还可以使用dateutil或zoneinfo (Python 3.9+)使用这种方法设置其他时区。
推荐阅读
- python - 如何通过 python sdk 下载传递内容(视频)?
- javascript - 在上传到谷歌云存储之前用锐利调整图像大小
- c# - 无法通过 pl/sql 在 Oracle 中的请求得到答案
- openstreetmap - 使用 QGIS 或 Maperitive 在 Openstreet Map 上生成 XYZ Tiles 获取坏图像
- azure - Azure B2C 自定义策略 - 有没有办法在 ClaimsProviderSelection 编排步骤中显示声明
- java - Apache Geode JSON PDX 问题
- c++ - 在 C++ 中生成具有相等概率的随机数
- angular - 是否有用于检测未使用的类属性的 eslint 规则?
- sql - 如何在 azure devops 发布管道中包含更新查询
- javascript - 如何测试中间件中返回的请求值