标签: pytz

Python 3 标准库中的 datetime.timezone 类有任何实际用途吗?

datetime.timezone 类的文档仅说明:

将 tzinfo 抽象基类实现为与 UTC 的固定偏移量的类。

它接受 timedelta 作为其参数。

我从未见过直接从其他人的代码片段中使用它的示例,尽管我相信一定有它的用途,否则 Python 就没有必要公开这个 API。那么什么情况下建议直接使用这个类呢?与使用专用库(例如 pytz)相比,这有什么优势?

python timezone datetime standard-library pytz

1
推荐指数
1
解决办法
2185
查看次数

Python 中的“美国/东部”时区与“EST”时区

现在是2022/06/28,实际上是2022年6月28日;我注意到,当我尝试从 Python 控制台获取当前时间时,可能会出现两个不同的结果:东部时间(多伦多、蒙特利尔和纽约)。那么这两个参数有什么区别呢?我来回答这个问题:

python timezone pytz

1
推荐指数
1
解决办法
1777
查看次数

从时区偏移量本地化日期时间(时区感知)

我有一个 UTC 时间戳和一个时区偏移时间戳(均以毫秒为单位):

utc_time = 1394452800000
timezoneoffset = -14400000
Run Code Online (Sandbox Code Playgroud)

如果我想得到datetime我会做的:

print datetime.utcfromtimestamp(utc_time/1000)
>>>2014-03-10 12:00:00
Run Code Online (Sandbox Code Playgroud)

我怎样才能本地化这个日期时间而且最终对象是时区感知的?

如果我除以timezoneoffset-14400000/(3600*1000) = -4(小时)。所以最终的输出应该是:

>>>2014-03-10 08:00:00-04:00
Run Code Online (Sandbox Code Playgroud)

我的尝试:

from pytz import timezone
from dateutil.tz import tzoffset

utc_time = 1394452800000
timezoneoffset = -14400000

tzinfooff = tzoffset(None, timezoneoffset/1000)

print timezone(tzinfooff).localize( datetime.utcfromtimestamp(utc_time/1000) )

>>>Traceback (most recent call last):
  File "/Users/dionysis_lorentzos/Desktop/cmdline copy.py", line 25, in <module>
    print timezone(tzinfo2).localize( datetime.utcfromtimestamp(time/1000) ).isoformat()
  File "/usr/local/lib/python2.7/site-packages/pytz/__init__.py", line 162, in timezone
    if zone.upper() == 'UTC':
AttributeError: 'tzoffset' object has no attribute 'upper'
Run Code Online (Sandbox Code Playgroud)

python pytz python-datetime python-dateutil

0
推荐指数
1
解决办法
6116
查看次数

使用pytz转换时区

我已将时区转换为"欧洲/伦敦",打印出来:2017-07-27 12:39:07 + 01:00作为伦敦时间是正确的.

但是如何让这个打印时间加上+01:00,所以在这种情况下它会是13.39.07?这是我正在使用的功能:

def utc_to_london(utc_dt):
        tz = pytz.timezone('Europe/London').localize(utc_dt)
        print(tz)
        return tz;
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助

timezone datetime utc pytz python-3.x

-2
推荐指数
1
解决办法
1028
查看次数