python - 从 PST -8 0 到其字母名称的时区转换

标签 python bash timezone timestamp-with-timezone

我将时区信息保存为 "PST -8 0"。我想将其转换为等效的时区名称,例如美国/洛杉矶

是否有任何库或 API 可用于此转换?我正在为此任务寻找 BASH 命令或 PYTHON API。

我不确定这种转换是否可能首先并征求您的意见。

最佳答案

虽然在某些特定情况下您可以按要求执行操作,但在一般情况下您不能这样做,原因如下:

  • 时区缩写可能不明确。例如,"CST" 有 5 种不同的含义。参见 Wikipedia's list of time zone abbreviations .

  • 时区缩写不统一且不一致。维基百科的列表可能与您在其他地方找到的其他缩写词列表不同。在世界上的一些地方,没有缩写词在使用,而另一些地方则争论正确的缩写词应该是什么。

  • 时区偏移量并不完全代表一个时区。太平洋时间不是-8。冬天是-8,夏天是-7。它会随着夏令时而变化。

  • tzdb 中的许多不同时区标识符在某个时间点共享相同的偏移量,有时甚至共享相同的缩写。对于您给出的示例,结果很容易是 America/Vancouver 而不是 America/Los_Angeles。在某些情况下,可以匹配的各个区域对于不同的时间点会有很大的不同。引用the list of tzdb zones on Wikipedia ,其中包括它们的偏移量。

关于python - 从 PST -8 0 到其字母名称的时区转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34301915/

相关文章:

linux - 根据条件在 Linux 中重命名文件名

SQL - 在时区

python - Tkinter 条目小部件 - 如果条目不是 int 则出错

bash - 打印终端别名命令并执行它

linux - Bash 模式匹配

node.js - 时区或位置与 UTC 的偏移量

datetime - 在 Lua 中,考虑夏令时时如何获得纽约时间?

python - 需要更改 A* 算法,以便它可以与代理轮换一起使用

python - 快速删除只有一个不同值的数据框列

python - ValueError:X 每个样本有 29 个特征;期待 84