首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将python的datetime.tzinfo对象转换为钟摆的时区对象?

如何将python的datetime.tzinfo对象转换为钟摆的时区对象?
EN

Stack Overflow用户
提问于 2021-06-22 23:32:30
回答 1查看 86关注 0票数 0

我知道我可以将datetime.datetime转换成钟摆:

代码语言:javascript
复制
from datetime import datetime,timezone
import pendulum

a = datetime(2021,6,1,tzinfo=timezone.utc)
b = pendulum.instance(a)
b.tzinfo.name # the presence of the attribute 'name' means it's a pendulum timezone
type(b.tzinfo) # pendulum.tz.timezone.FixedTimezone

但是我有一个独立的datetime.tzinfo,可以把它转换成pendulum.tz.timezone.*

代码语言:javascript
复制
a = timezone.utc # well, imagine that it can be any tzinfo
b = pendulum.xxxxx(a) # that gives tome pendum.tz.timezone class

有这样的方法吗?

EN

回答 1

Stack Overflow用户

发布于 2021-06-22 23:32:30

查看pendulum.instance()的实现,您可以看出它依赖于一个“私有”函数_safe_timezone,您可以使用该函数将tzinfo转换为钟摆的时区。以_下划线开头的方法/函数通常表示它们不构成public API的一部分,但函数是存在的。

对于tzinfo=timezone.utcpendulum.instance()会将tzinfo对象转换为以小时为单位的偏移量,并将其传递给pendulum.datetime,后者将使用pendulum._safe_timezone()将其转换为pendulum.tz.timezone.FixedTimeZone。但是_safe_timezone()也接受常规的datetime.tzinfo作为输入。

代码语言:javascript
复制
a = pendulum._safe_timezone(timezone.utc) #  Timezone('UTC')
type(a) # pendulum.tz.timezone.FixedTimezone
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68086548

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档