将 lambdas 的时区更改为 EST?

Posted

技术标签:

【中文标题】将 lambdas 的时区更改为 EST?【英文标题】:Changing timezone for lambdas to EST? 【发布时间】:2022-01-13 14:35:03 【问题描述】:

我进入了我的 lambdas 的环境变量并将TZ 更改为EST。我的问题是,这有效吗?例如,我不断看到人们做America/Florida 之类的事情。如果我只想要一个总时区而不是指定位置怎么办?

【问题讨论】:

【参考方案1】:

Lambda env var docs: TZ – 环境的时区 (UTC)。执行环境使用NTP同步系统时钟...这些环境变量的key是保留的,不能在你的函数配置中设置。

所以环境使用UTC。使用您的运行时语言来处理时区转换。

例如,Python:

from zoneinfo import ZoneInfo
from datetime import datetime
    
dt_ny = datetime.now(tz=ZoneInfo('America/New_York'))
dt_est = dt_ny.astimezone(ZoneInfo('EST'))
print(dt_ny)  # 2021-12-08 15:01:38.958676-05:00
print(dt_est) # 2021-12-08 15:01:38.958676-05:00
print(dt_ny == dt_est) # True during the winter, False in summer

IANA timezone database'sAmerica/Florida 风格的格式在编程语言中得到广泛支持。与Z+2:00 格式或EST 不同,它们不会被夏令时(“夏令时”)搞砸。即使EST 与今天的America/New_York 相同,但在夏季纽约切换到EDT 时不会。在您开始使用它们之前,时区似乎非常简单。

【讨论】:

以上是关于将 lambdas 的时区更改为 EST?的主要内容,如果未能解决你的问题,请参考以下文章

将 UTC 时间戳插入 MySQL - 夏令时时区

将时间更改为特定时区的最简单方法

如何获取 pytz 时区的通用名称,例如。美国/纽约的 EST/EDT

将mysql时区更改为中国时间? [复制]

将 postgresql 中的 UTC 时区转换为 EST(本地时间)

如何将时间转换为 iPhone 设备的时区?