我不明白python是如何计算时间的。对我来说似乎不一致。
我的服务器时间是:
admin@httstools ~ $ date
Fri Dec 21 17:00:51 PST 2018
在 python 解释器中,我得到了预期的结果(即 2018-12-21):
admin@httstools ~ $ python
Python 2.7.5 (default, Nov 6 2016, 00:28:07)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import time
>>> import datetime
>>> str(datetime.date.today())
'2018-12-21'
>>>
但是如果我弄乱了时区,事情就会变得很棘手:
>>> time.tzname[time.localtime().tm_isdst]
'PST'
PST 是正确的时区。但是如果我将我的环境设置为那个 TZ,然后再次运行上一个命令,我会得到一个不同的日期,这显然是不正确的:
>>> os.environ['TZ'] = time.tzname[time.localtime().tm_isdst]
>>> str(datetime.date.today())
'2018-12-22'
>>>
预期结果将是 2018-12-21,其中 TZ 变量设置为“PST”。
作为后续,我可以在 python 中运行什么命令,它总是会根据我的位置返回正确的日期/时间。
POPMUISE
相关分类