首页 > 解决方案 > 在python中将整个解释器设置为UTC

问题描述

我想确保整个脚本默认只使用 UTC。知道怎么做吗?我一直在寻找解决方案,但不知何故找不到任何工作。我真正想要的是确保:

import datetime
# SOME CODE HERE
print(datetime.datetime.fromtimestamp(0).strftime('%Y-%m-%d %H:%M:%S'))

在任何机器上打印 1970-01-01 00:00:00,没有更多麻烦,并且所有内容都被视为 UTC。

标签: pythonutc

解决方案


如果你确保在导入之前TZ设置了环境变量,那么就没有必要使用.datetimetime.tzset()

例如:

>>> import os
>>> os.environ["TZ"] = "UTC"
>>> import datetime
>>> print(datetime.datetime.fromtimestamp(0).strftime('%Y-%m-%d %H:%M:%S'))
1970-01-01 01:00:00

为了避免编辑您的 Python 脚本,您可以在执行时设置环境变量。例如在 Linux 命令行中:

env TZ=UTC python myscript.py

推荐阅读