python - 你如何使用python将本地时间(PDT)转换为PST

标签 python datetime time timezone

如果我想转换时区,通常我会做如下

# local interpreted as pst to utc

utc = pytz.utc
pst = pytz.timezone('America/Los_Angeles')


start_time_str = time.strftime('%Y-%m-%d %H:%M:%S', \
  time.localtime(start_time))
start_time_datetime = \
  datetime.datetime.strptime(start_time_str, "%Y-%m-%d %H:%M:%S")

start_time_datetime = \
  start_time_datetime.replace(tzinfo=pst).astimezone(utc)

现在我想做类似的事情,比如我想把本地时间转换成 pst

localtime = datetime.datetime.fromtimestamp(time.mktime(
            time.localtime()))

我不太确定你会怎么做

任何帮助将不胜感激

最佳答案

两件事:

  1. “America/Los_Angeles” 标识符代表整个太平洋时区,包括 PST 和 PDT。它将使用 -8 或 -7 作为时区偏移量,具体取决于使用它的具体日期和时间。

  2. 调用 replace(tzinfo=...) 是一个错误。请改用 localize。参见 the pytz documentation .这在介绍和第一个示例中进行了讨论。

关于python - 你如何使用python将本地时间(PDT)转换为PST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30988307/

相关文章:

java - Joda Time,同时解析hours和clockhours

pandas - 使用 Pandas 按日期计数值的频率

mysql - 我如何使用这个复杂的表格结构按日期和时间订购我的商品?

ruby - 我如何计算一段时间内的项目?

python - 在python中对数组列表进行分类

python - 从 zsh 安装 scrapy 时出错

datetime - 在 XSLT 中向 DateTime 添加持续时间

戈朗 : Wait x amount of time before looping again without starting new goroutine

检查超时条件的 Pythonic 方法?

python - 如何按列将值添加到数据框中