Python的Cython实现集合.OrderedDict
cyordereddict的Python项目详细描述
**这个图书馆已经过时了!**Python 3.5``集合.OrderedDict``是用C重写的,现在比``cyordereddict.OrderedDict``几乎所有操作。
。。_用C重写:https://bugs.python.org/issue16991
==========
按顺序排列的dict
==========
。。图片:https://travis-ci.org/shoyer/cyordereddict.svg?分支=主
:目标:https://travis-ci.org/shoyer/cyordereddict
。。图片:https://badge.fury.io/py/cyordereddict.svg
:目标:https://pypi.python.org/pypi/cyordereddict
Python标准库的“OrderedDict”已移植到Cython。一个快速2-6倍的替换程序。
安装:
``pip Install cyordereddict``
依赖项:
CPython(2.6、2.7、3.3或3.4)和一个C编译器。Cython只需要
对于开发版本。
使用:
。。python
从CyOrderedDidict import OrderedDict import OrderedDict
基准:
python 2.7:
===================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
```` UUUUUUUUUUUUUUUUUUUUU``空`` OrderedDict()`` OrderedDict()`` 1.8的1.8 ```` UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUIUUUUIUIUUIUIUIUUIU铺设` ` `` OrderEddididididididididict()OrderEdDidict()OrderEdDicDicDicDicDicDicDicDicDic数据)`4.6
``__setitem_U```ordereddict[0]=0``8.6
`````ordereddict[0]``3
``update````ordereddict.update(dict_data)``5.5
``````列表(ordereddict)`5.6
“项目”``ordereddict.items()``` 5.9
`````` UU包含的是`````` 0的0在OrderedDidict`` 2.3
==========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
`````unuInit``empty``OrderedDict()``1.5
``````list``OrderedDict(list_data)``3.9
````unu init`dict``OrderedDict(dict_data)``4.2
```````OrderedDict[0]=0``8.4
``````OrderedDict[0]`2.9
``更新````ordereddict.update(dict_data)``6.5
``````列表(ordereddict)``2.3
``items```列表(ordereddict.items())``2.1
````u包含````0,顺序为dict``2.3
============================================================================
若要自己运行这些程序,请使用``cyordereddict.benchmark()```
Cavaets:
``cyOrderedDict.OrderedDict``是一个扩展类型(类似于
内置的dict```),而不是Python类。这对于速度是必要的,
但意味着在少数病理情况下,其行为将与
不同``集合.OrderedDict``:
*检查模块不工作``cyOrderedDict.OrderedDict``
方法。
*扩展类型使用插槽而不是字典,因此,在不生成子类的情况下,不能添加
自定义属性(例如,
``OrderedDict.foo='bar'``将失败)。
您可以对OrderedDict执行任何其他操作,包括
子类化:其他所有操作都通过``集合.OrderedDict``测试
套件。我们将Cython代码直接基于Python标准库,
,因此对Python 2和Python 3使用单独的代码基,特别是为了减少引入新错误或性能退化的可能性。
License:
MIT。基于Python标准库,该库在Python
软件基础许可证下。
。。_用C重写:https://bugs.python.org/issue16991
==========
按顺序排列的dict
==========
。。图片:https://travis-ci.org/shoyer/cyordereddict.svg?分支=主
:目标:https://travis-ci.org/shoyer/cyordereddict
。。图片:https://badge.fury.io/py/cyordereddict.svg
:目标:https://pypi.python.org/pypi/cyordereddict
Python标准库的“OrderedDict”已移植到Cython。一个快速2-6倍的替换程序。
安装:
``pip Install cyordereddict``
依赖项:
CPython(2.6、2.7、3.3或3.4)和一个C编译器。Cython只需要
对于开发版本。
使用:
。。python
从CyOrderedDidict import OrderedDict import OrderedDict
基准:
python 2.7:
===================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
```` UUUUUUUUUUUUUUUUUUUUU``空`` OrderedDict()`` OrderedDict()`` 1.8的1.8
``__setitem_U```ordereddict[0]=0``8.6
`````ordereddict[0]``3
``update````ordereddict.update(dict_data)``5.5
``````列表(ordereddict)`5.6
“项目”``ordereddict.items()``` 5.9
`````` UU包含的是`````` 0的0在OrderedDidict`` 2.3
==========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
`````unuInit``empty``OrderedDict()``1.5
``````list``OrderedDict(list_data)``3.9
````unu init`dict``OrderedDict(dict_data)``4.2
```````OrderedDict[0]=0``8.4
``````OrderedDict[0]`2.9
``更新````ordereddict.update(dict_data)``6.5
``````列表(ordereddict)``2.3
``items```列表(ordereddict.items())``2.1
````u包含````0,顺序为dict``2.3
============================================================================
若要自己运行这些程序,请使用``cyordereddict.benchmark()```
Cavaets:
``cyOrderedDict.OrderedDict``是一个扩展类型(类似于
内置的dict```),而不是Python类。这对于速度是必要的,
但意味着在少数病理情况下,其行为将与
不同``集合.OrderedDict``:
*检查模块不工作``cyOrderedDict.OrderedDict``
方法。
*扩展类型使用插槽而不是字典,因此,在不生成子类的情况下,不能添加
自定义属性(例如,
``OrderedDict.foo='bar'``将失败)。
您可以对OrderedDict执行任何其他操作,包括
子类化:其他所有操作都通过``集合.OrderedDict``测试
套件。我们将Cython代码直接基于Python标准库,
,因此对Python 2和Python 3使用单独的代码基,特别是为了减少引入新错误或性能退化的可能性。
License:
MIT。基于Python标准库,该库在Python
软件基础许可证下。
- 项目
标签: