# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= python-ordered-set VERSION= 4.1.0 KEYWORDS= python VARIANTS= v12 v13 SDESC[v12]= Custom MutableSet that stays in order (3.12) SDESC[v13]= Custom MutableSet that stays in order (3.13) HOMEPAGE= none CONTACT= Python_Automaton[python@ironwolf.systems] DOWNLOAD_GROUPS= main SITES[main]= PYPIWHL/33/55/af02708f230eb77084a299d7b08175cff006dea4f2721074b92cdb0296c0 DISTFILE[1]= ordered_set-4.1.0-py3-none-any.whl:main DIST_SUBDIR= python-src DF_INDEX= 1 SPKGS[v12]= single SPKGS[v13]= single OPTIONS_AVAILABLE= PY312 PY313 OPTIONS_STANDARD= none VOPTS[v12]= PY312=ON PY313=OFF VOPTS[v13]= PY312=OFF PY313=ON DISTNAME= ordered_set-4.1.0.dist-info GENERATED= yes [PY312].USES_ON= python:v12,wheel [PY313].USES_ON= python:v13,wheel [FILE:2460:descriptions/desc.single] [Pypi] An OrderedSet is a mutable data structure that is a hybrid of a list and a set. It remembers the order of its entries, and every entry has an index number that can be looked up. ## Installation `ordered_set` is available on PyPI and packaged as a wheel. You can list it as a dependency of your project, in whatever form that takes. To install it into your current Python environment: pip install ordered-set To install the code for development, after checking out the repository: pip install flit flit install ## Usage examples An OrderedSet is created and used like a set: >>> from ordered_set import OrderedSet >>> letters = OrderedSet('abracadabra') >>> letters OrderedSet(['a', 'b', 'r', 'c', 'd']) >>> 'r' in letters True It is efficient to find the index of an entry in an OrderedSet, or find an entry by its index. To help with this use case, the `.add()` method returns the index of the added item, whether it was already in the set or not. >>> letters.index('r') 2 >>> letters[2] 'r' >>> letters.add('r') 2 >>> letters.add('x') 5 OrderedSets implement the union (`|`), intersection (`&`), and difference (`-`) operators like sets do. >>> letters |= OrderedSet('shazam') >>> letters OrderedSet(['a', 'b', 'r', 'c', 'd', 'x', 's', 'h', 'z', 'm']) >>> letters & set('aeiou') OrderedSet(['a']) >>> letters -= 'abcd' >>> letters OrderedSet(['r', 'x', 's', 'h', 'z', 'm']) The `__getitem__()` and `index()` methods have been extended to accept any iterable except a string, returning a list, to perform NumPy-like "fancy indexing". >>> letters = OrderedSet('abracadabra') >>> letters[[0, 2, 3]] ['a', 'r', 'c'] >>> letters.index(['a', 'r', 'c']) [0, 2, 3] OrderedSet implements `__getstate__` and `__setstate__` so it can be pickled, and implements the abstract base classes `collections.MutableSet` and `collections.Sequence`. OrderedSet can be used as a generic collection type, similar to the collections in the `typing` module like List, Dict, and Set. For example, you can annotate a variable as having the type `OrderedSet[str]` or `OrderedSet[Tuple[int, str]]`. ## OrderedSet in data science applications An OrderedSet can be used as a bi-directional mapping between a sparse vocabulary and dense index numbers. As of version 3.1, it accepts NumPy arrays of index numbers as well as lists. [FILE:124:distinfo] 046e1132c71fcf3330438a539928932caf51ddbc582496833e23de611de14562 7634 python-src/ordered_set-4.1.0-py3-none-any.whl