123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299 |
- Metadata-Version: 2.0
- Name: bidict
- Version: 0.17.2
- Summary: Efficient, Pythonic bidirectional map implementation and related functionality
- Home-page: https://bidict.readthedocs.io
- Author: Joshua Bronson
- Author-email: jab@math.brown.edu
- License: MPL 2.0
- Keywords: dict dictionary mapping datastructure bimap bijection bijective injective inverse reverse bidirectional two-way 2-way
- Platform: UNKNOWN
- Classifier: Development Status :: 4 - Beta
- Classifier: Intended Audience :: Developers
- Classifier: License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)
- Classifier: Operating System :: OS Independent
- Classifier: Programming Language :: Python :: 2.7
- Classifier: Programming Language :: Python :: 3
- Classifier: Programming Language :: Python :: 3.4
- Classifier: Programming Language :: Python :: 3.5
- Classifier: Programming Language :: Python :: 3.6
- Classifier: Programming Language :: Python :: 3.7
- Classifier: Programming Language :: Python :: Implementation :: CPython
- Classifier: Programming Language :: Python :: Implementation :: PyPy
- Classifier: Topic :: Software Development :: Libraries :: Python Modules
- Provides-Extra: coverage
- Requires-Dist: coverage (<5); extra == 'coverage'
- Requires-Dist: pytest-cov (<3); extra == 'coverage'
- Provides-Extra: dev
- Requires-Dist: Sphinx (<2); extra == 'dev'
- Requires-Dist: coverage (<5); extra == 'dev'
- Requires-Dist: flake8 (<3.6); extra == 'dev'
- Requires-Dist: hypothesis (<4); extra == 'dev'
- Requires-Dist: hypothesis-pytest (<1); extra == 'dev'
- Requires-Dist: pre-commit (<2); extra == 'dev'
- Requires-Dist: py (<2); extra == 'dev'
- Requires-Dist: pydocstyle (<2.2); extra == 'dev'
- Requires-Dist: pylint (<1.9); extra == 'dev'
- Requires-Dist: pytest (<4); extra == 'dev'
- Requires-Dist: pytest-benchmark (<4); extra == 'dev'
- Requires-Dist: pytest-cov (<3); extra == 'dev'
- Requires-Dist: pytest-runner; extra == 'dev'
- Requires-Dist: setuptools-scm; extra == 'dev'
- Requires-Dist: sortedcollections (<1); extra == 'dev'
- Requires-Dist: sortedcontainers (<2); extra == 'dev'
- Requires-Dist: tox (<4); extra == 'dev'
- Provides-Extra: docs
- Requires-Dist: Sphinx (<2); extra == 'docs'
- Provides-Extra: test
- Requires-Dist: hypothesis (<4); extra == 'test'
- Requires-Dist: hypothesis-pytest (<1); extra == 'test'
- Requires-Dist: py (<2); extra == 'test'
- Requires-Dist: pytest (<4); extra == 'test'
- Requires-Dist: pytest-benchmark (<4); extra == 'test'
- Requires-Dist: sortedcollections (<1); extra == 'test'
- Requires-Dist: sortedcontainers (<2); extra == 'test'
- .. Forward declarations for all the custom interpreted text roles that
- Sphinx defines and that are used below. This helps Sphinx-unaware tools
- (e.g. rst2html, PyPI's and GitHub's renderers, etc.).
- .. role:: doc
- bidict
- ======
- Efficient, Pythonic bidirectional map implementation and related functionality.
- .. image:: https://raw.githubusercontent.com/jab/bidict/master/assets/logo.png
- :target: https://bidict.readthedocs.io/
- :alt: bidict logo
- Status
- ------
- .. Hide until https://github.com/badges/shields/issues/716 is fixed
- .. image:: https://img.shields.io/pypi/dm/bidict.svg
- :target: https://pypi.org/project/bidict
- :alt: Downloads per month
- .. image:: https://img.shields.io/pypi/v/bidict.svg
- :target: https://pypi.org/project/bidict
- :alt: Latest release
- .. image:: https://img.shields.io/readthedocs/bidict/master.svg
- :target: https://bidict.readthedocs.io/en/master/
- :alt: Documentation
- .. image:: https://api.travis-ci.org/jab/bidict.svg?branch=master
- :target: https://travis-ci.org/jab/bidict
- :alt: Travis-CI build status
- .. image:: https://ci.appveyor.com/api/projects/status/gk133415udncwto3/branch/master?svg=true
- :target: https://ci.appveyor.com/project/jab/bidict
- :alt: AppVeyor (Windows) build status
- .. image:: https://codecov.io/gh/jab/bidict/branch/master/graph/badge.svg
- :target: https://codecov.io/gh/jab/bidict
- :alt: Test coverage
- .. image:: https://api.codacy.com/project/badge/Grade/6628756a73254cd895656348236833b8
- :target: https://www.codacy.com/app/jab/bidict
- :alt: Codacy grade
- .. Hide to reduce clutter
- .. image:: https://img.shields.io/pypi/pyversions/bidict.svg
- :target: https://pypi.org/project/bidict
- :alt: Supported Python versions
- .. image:: https://img.shields.io/pypi/implementation/bidict.svg
- :target: https://pypi.org/project/bidict
- :alt: Supported Python implementations
- .. image:: https://img.shields.io/badge/lgtm-👍-blue.svg
- :target: https://lgtm.com/projects/g/jab/bidict/
- :alt: LGTM
- .. image:: https://img.shields.io/pypi/l/bidict.svg
- :target: https://raw.githubusercontent.com/jab/bidict/master/LICENSE
- :alt: License
- Bidict:
- ^^^^^^^
- - is in use by several teams at Google, Venmo, CERN, Bank of America Merrill Lynch,
- Two Sigma, and many others,
- - has carefully designed APIs for
- safety, simplicity, flexibility, and ergonomics,
- - is CPython-, PyPy-, Python 2-, and Python 3-compatible,
- - has extensive `test coverage <https://codecov.io/gh/jab/bidict>`__,
- including property-based tests and benchmarks,
- which are run continuously on all supported Python versions and OSes,
- - integrates with Python’s collections interfaces and abstract base classes,
- - has mature, well-factored, well-documented code.
- Installation
- ------------
- ``pip install bidict``
- Quick Start
- -----------
- .. code:: python
- >>> from bidict import bidict
- >>> element_by_symbol = bidict({'H': 'hydrogen'})
- >>> element_by_symbol['H']
- 'hydrogen'
- >>> element_by_symbol.inv['hydrogen']
- 'H'
- For more usage documentation,
- head to the :doc:`intro` [#fn-intro]_
- and proceed from there.
- Community and Support
- ---------------------
- .. image:: https://img.shields.io/badge/chat-on%20gitter-5AB999.svg?logo=gitter-white
- :target: https://gitter.im/jab/bidict
- :alt: Chat
- If you are thinking of using bidict in your work,
- or if you have any questions, comments, or suggestions,
- I'd love to know about your use case
- and provide as much support for it as possible.
- Please feel free to leave a message in the
- `chatroom <https://gitter.im/jab/bidict>`__
- or to open a new issue on GitHub.
- You can search through
- `existing issues <https://github.com/jab/bidict/issues>`__
- before creating a new one
- in case your questions or concerns have been adressed there already.
- Notice of Usage
- ---------------
- If you use bidict,
- and especially if your usage or your organization is significant in some way,
- please let me know.
- You can:
- - quickly +1 `this issue <https://github.com/jab/bidict/issues/62>`__
- - create your own `dedicated issue <https://github.com/jab/bidict/issues/new?title=Notice+of+Usage&body=I+am+using+bidict+for...>`__
- - leave a message in the `chat room <https://gitter.im/jab/bidict>`__
- - `email me <mailto:jab@math.brown.edu?subject=bidict&body=I%20am%20using%20bidict%20for...>`__
- Changelog
- ---------
- See the :doc:`changelog` [#fn-changelog]_
- for a history of notable changes to bidict.
- Release Notifications
- ---------------------
- .. duplicated in CHANGELOG.rst:
- (would use `.. include::` but GitHub doesn't understand it)
- .. image:: https://img.shields.io/badge/libraries.io-subscribe-5BC0DF.svg
- :target: https://libraries.io/pypi/bidict
- :alt: Follow on libraries.io
- Tip: `Subscribe to bidict releases <https://libraries.io/pypi/bidict>`__
- on libraries.io to be notified when new versions of bidict are released.
- Learning from bidict
- --------------------
- One of the most rewarding things about bidict
- is the outsized amount of advanced Python
- it covers in light of its small codebase.
- Check out :doc:`learning-from-bidict` [#fn-learning]_
- if you're interested in learning more.
- Contributing
- ------------
- Bidict is currently a one-person operation
- maintained on a voluntary basis
- with no other sponsorship.
- Your help would be most welcome!
- Reviewers Wanted!
- ^^^^^^^^^^^^^^^^^
- One of the most valuable ways to contribute to bidict
- and to :doc:`explore some advanced Python <learning-from-bidict>`
- while you're at it
- is to review bidict's relatively small codebase.
- Please create an issue or pull request with any improvements you'd propose
- or any other results you found.
- (Submitting a "Nothing-to-merge" PR with feedback in inline code comments or a
- `Review results <https://github.com/jab/bidict/issues/new?title=Review+results>`__
- issue both work well.)
- You can also
- +1 `this issue <https://github.com/jab/bidict/issues/63>`__
- to sign up to give feedback on future proposed changes
- that are in need of a reviewer.
- Funding
- ^^^^^^^
- .. duplicated in CONTRIBUTING.rst
- (would use `.. include::` but GitHub doesn't understand it)
- If bidict has helped you accomplish your work,
- especially work you've been paid for,
- please consider chipping in toward the costs
- of bidict's maintenance and development
- and/or ask your organization to do the same.
- Any amount contributed is gratefully received.
- .. image:: https://raw.githubusercontent.com/jab/bidict/master/assets/support-on-gumroad.png
- :target: https://gumroad.com/l/bidict
- :alt: Support bidict
- Finding Documentation
- ---------------------
- If you're viewing this on `<https://bidict.readthedocs.io>`__,
- note that multiple versions of the documentation are available,
- and you can choose a different version using the popup menu at the bottom-right.
- Please make sure you're viewing the version of the documentation
- that corresponds to the version of bidict you'd like to use.
- If you're viewing this on GitHub, PyPI, or some other place
- that can't render and link this documentation properly
- and are seeing broken links,
- try these alternate links instead:
- .. [#fn-intro] `<docs/intro.rst>`__ | `<https://bidict.readthedocs.io/intro.html>`__
- .. [#fn-changelog] `<CHANGELOG.rst>`__ | `<https://bidict.readthedocs.io/changelog.html>`__
- .. [#fn-learning] `<docs/learning-from-bidict.rst>`__ | `<https://bidict.readthedocs.io/learning-from-bidict.html>`__
- ----
- Next: :doc:`intro` [#fn-intro]_
|