Python 3.6支持PyODict_New吗?

时间:2019-01-20 17:21:26

标签: python python-c-api

尽管它存在于https://github.com/python/cpython/blob/3.6/Objects/odictobject.c

,但找不到Python文档。

1 个答案:

答案 0 :(得分:0)

您引用的页面是OrderedDict类的C实现。但是,如果您使用Python而不是C语言进行编程,则只需从collections库模块导入Python实现:

from collections import OrderedDict
mydict = OrderedDict()

我有点困惑,您想在Python程序中使用C实现。

无论如何,在Python 3.6中,Python中的普通dict也会保留输入顺序,这意味着现在没有理由在新代码中使用OrderedDict了。 Raymond Hettinger(谁写过OrderedDict类)tweeted,2016年9月“ OrderedDict死了。有序的命令寿命很长。”