C中是否有任何datetime.tzinfo实现?

时间:2018-05-14 17:49:47

标签: python cpython python-c-api python-datetime

我一直在研究一个使用C扩展模块进行ISO 8601解析的Python库。

部分工作需要创建tzinfo对象,这是解析中最慢的部分。调用tzinfo的Python实现(目前为pytz.FixedOffset)太慢了。

在Python 3.7中,datetime.timezone最终暴露给C-API。我的代码充分利用它,并通过使用C实现而不是Python实现获得巨大的性能提升。我很想找到一个类似的C实现,我可以用于Python< 3.6。也许是3.7 datetime.timezone的“后端”?

我见过许多tzinfo(pytzdatetuil.tzdjango.utils.timezonepsycopg2.tz)的Python实现,但在C中没有。

是否有tzinfo的C实现(除了datetime.timezone)?

1 个答案:

答案 0 :(得分:0)

在搜索了一些之后,我最终在Pendulum's低级ISO 8601 parser找到了一个实现。

修改:此实施最终在my backport of datetime.fromisoformat

中使用