Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python.announce > #1825

ruamel.orderddict a C implementation of Foord/Larosa's odict and superset of standard library OrderedDict

Path csiph.com!eternal-september.org!feeder.eternal-september.org!feeds.phibee-telecom.net!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!nzpost1.xs4all.net!not-for-mail
Return-Path <a.van.der.neut@ruamel.eu>
X-Original-To python-announce-list@python.org
Delivered-To python-announce-list@mail.python.org
X-Spam-Status OK 0.001
X-Spam-Evidence '*H*': 1.00; '*S*': 0.00; 'url:pypi': 0.03; 'wrapper': 0.07; 'derived': 0.09; 'insertion': 0.09; 'library),': 0.09; 'specified,': 0.09; 'subject:library': 0.09; 'python': 0.10; '2.7': 0.13; 'subject: \n ': 0.15; 'bitbucket.': 0.16; 'blurb': 0.16; 'dictionaries': 0.16; "key's": 0.16; 'ordereddict': 0.16; 'received:194.109': 0.16; 'received:194.109.24': 0.16; 'received:eu': 0.16; 'sorting': 0.16; 'unittests': 0.16; 'helper': 0.18; 'transform': 0.18; 'subject:skip:i 10': 0.22; 'pass': 0.22; '(this': 0.24; 'implemented': 0.24; 'header:User-Agent:1': 0.26; 'installed': 0.26; 'function': 0.28; 'values': 0.28; 'comparison': 0.29; 'dictionary': 0.29; 'received:78.46': 0.29; 'subject:/': 0.30; 'announce': 0.32; 'url:python': 0.33; 'ordered': 0.33; 'windows.': 0.33; 'but': 0.36; 'url:org': 0.36; 'faster': 0.36; 'hosted': 0.36; 'received:org': 0.37; 'sources': 0.37; 'release': 0.37; 'skip:v 20': 0.38; 'version': 0.38; '2007': 0.38; 'skip:- 20': 0.39; 'to:addr:python.org': 0.40; 'received:194': 0.61; 'subject: ': 0.61; 'more': 0.63; 'times': 0.63; 'dict()': 0.84; 'wheels': 0.84; 'enhancement': 0.96
Date Wed, 26 Aug 2015 00:35:47 +0200
From Anthon van der Neut <a.van.der.neut@ruamel.eu>
Organization RUAMEL
User-Agent Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.8.0
MIME-Version 1.0
To Python Announcements <python-announce-list@python.org>
Subject ruamel.orderddict a C implementation of Foord/Larosa's odict and superset of standard library OrderedDict
Content-Type text/plain; charset=utf-8
Content-Transfer-Encoding 7bit
X-Mailman-Approved-At Wed, 26 Aug 2015 07:06:25 +0200
X-BeenThere python-announce-list@python.org
X-Mailman-Version 2.1.20+
Precedence list
List-Id Announcement-only list for the Python programming language <python-announce-list.python.org>
List-Unsubscribe <https://mail.python.org/mailman/options/python-announce-list>, <mailto:python-announce-list-request@python.org?subject=unsubscribe>
List-Archive <http://mail.python.org/pipermail/python-announce-list/>
List-Post <mailto:python-announce-list@python.org>
List-Help <mailto:python-announce-list-request@python.org?subject=help>
List-Subscribe <https://mail.python.org/mailman/listinfo/python-announce-list>, <mailto:python-announce-list-request@python.org?subject=subscribe>
Approved python-announce-list@python.org
Newsgroups comp.lang.python.announce
Message-ID <mailman.36.1440565585.11709.python-announce-list@python.org> (permalink)
Lines 33
NNTP-Posting-Host 2001:888:2000:d::a6
X-Trace 1440565585 news.xs4all.nl 23729 [2001:888:2000:d::a6]:56011
X-Complaints-To abuse@xs4all.nl
Xref csiph.com comp.lang.python.announce:1825

Show key headers only | View raw


After once again multiple (this time only three) years, I am happy to
announce version 0.4.9 of ruamel.orderddict.

Main enhancement since the original release in 2007 is the addition of
the viewkeys/viewitems/viewvalues methods as added to the dictionaries
in Python 2.7

The package can be installed from PyPI, and wheels are available for
Windows.

https://pypi.python.org/pypi/ruamel.ordereddict

Sources are hosted on bitbucket.

---------------------

>From the blurb on ruamel.ordereddict home-page:

This is an implementation of an ordered dictionary with Key Insertion
Order (KIO: updates of values do not affect the position of the key),
Key Value Insertion Order (KVIO, an existing key's position is removed
and put at the back).

Sorted dictionaries are also provided. Currently only with Key Sorted
Order (KSO, no sorting function can be specified, but a transform
function to be applied on the key before comparison can be supplied).

It implementation is directly derived from dictobject.c and its speed is
5-10% slower than dict() and 5-9 times faster than Larosa/Foord
excellent pure Python implemention. With a little helper wrapper
(because of incompatibilities in the more recently implemented
OrderedDict in the standard library), ruamel.ordereddict will also pass
 all unittests for OrderedDict.

Back to comp.lang.python.announce | Previous | Next | Find similar | Unroll thread


Thread

ruamel.orderddict  a C implementation of Foord/Larosa's odict and superset of standard library OrderedDict Anthon van der Neut <a.van.der.neut@ruamel.eu> - 2015-08-26 00:35 +0200

csiph-web