将 Unix 时间戳转换为 AOE

Posted

技术标签:

【中文标题】将 Unix 时间戳转换为 AOE【英文标题】:Covert Unix Timestamp to AOE 【发布时间】:2020-06-01 17:05:21 【问题描述】:

我正在尝试将 Unix 时间戳转换为 AoE 时间。我试过 pytz 但似乎 pytz 没有 AoE 时间。有什么办法可以做到吗?

tz = pytz.timezone('AOE')
timestamp_aoe = datetime.fromtimestamp(timestamp, tz).isoformat() 

【问题讨论】:

【参考方案1】:

AoE 时区 (Anywhere on Earth; UTC-12) 未在 IANA tz 数据库 as far as I can tell 中定义。这是一个静态 UTC 偏移量为 -12 小时的时区,您也可以在“yankee”或“NATO”时间下找到它,参见military time zones。

由于过去 UTC 偏移量从未改变(没有 DST 等),您可以简单地自己定义它:

from datetime import datetime, timezone, timedelta

timestamp = 1582013600.5 # example UNIX time
tz = timezone(timedelta(hours=-12), name='AOE')
dt_aoe = datetime.fromtimestamp(timestamp, tz)

print(repr(dt_aoe), dt_aoe.isoformat())
# datetime.datetime(2020, 2, 17, 20, 13, 20, 500000, tzinfo=datetime.timezone(datetime.timedelta(days=-1, seconds=43200), 'AOE'))
# 2020-02-17T20:13:20.500000-12:00

【讨论】:

以上是关于将 Unix 时间戳转换为 AOE的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Shell 将 ISO 8601 时间戳转换为 Unix 时间戳?

将 Unix 时间戳转换为时区?

将 datetime 转换为 Unix 时间戳并将其转换回 python

excel怎么样批量将unix时间戳转化为北京时间

将普通日期转换为 unix 时间戳

excel怎么样批量将unix时间戳转化为北京时间