Skip to main content

multidict implementation

Project description

Azure Pipelines status for master branch Coverage metrics PyPI Documentationb Python versions Chat on Gitter

Multidict is dict-like collection of key-value pairs where key might be occurred more than once in the container.

Introduction

HTTP Headers and URL query string require specific data structure: multidict. It behaves mostly like a regular dict but it may have several values for the same key and preserves insertion ordering.

The key is str (or istr for case-insensitive dictionaries).

multidict has four multidict classes: MultiDict, MultiDictProxy, CIMultiDict and CIMultiDictProxy.

Immutable proxies (MultiDictProxy and CIMultiDictProxy) provide a dynamic view for the proxied multidict, the view reflects underlying collection changes. They implement the collections.abc.Mapping interface.

Regular mutable (MultiDict and CIMultiDict) classes implement collections.abc.MutableMapping and allows to change their own content.

Case insensitive (CIMultiDict and CIMultiDictProxy) ones assume the keys are case insensitive, e.g.:

>>> dct = CIMultiDict(key='val')
>>> 'Key' in dct
True
>>> dct['Key']
'val'

Keys should be str or istr instances.

The library has optional C Extensions for sake of speed.

License

Apache 2

Library Installation

$ pip install multidict

The library is Python 3 only!

PyPI contains binary wheels for Linux, Windows and MacOS. If you want to install multidict on another operation system (or Alpine Linux inside a Docker) the Tarball will be used to compile the library from sources. It requires C compiler and Python headers installed.

To skip the compilation please use MULTIDICT_NO_EXTENSIONS environment variable, e.g.:

$ MULTIDICT_NO_EXTENSIONS=1 pip install multidict

Please note, Pure Python (uncompiled) version is about 20-50 times slower depending on the usage scenario!!!

Changelog

See RTD page.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

multidict-4.7.4.tar.gz (50.3 kB view details)

Uploaded Source

Built Distributions

multidict-4.7.4-cp38-cp38-win_amd64.whl (48.7 kB view details)

Uploaded CPython 3.8 Windows x86-64

multidict-4.7.4-cp38-cp38-win32.whl (46.4 kB view details)

Uploaded CPython 3.8 Windows x86

multidict-4.7.4-cp38-cp38-manylinux1_x86_64.whl (161.6 kB view details)

Uploaded CPython 3.8

multidict-4.7.4-cp38-cp38-macosx_10_13_x86_64.whl (48.8 kB view details)

Uploaded CPython 3.8 macOS 10.13+ x86-64

multidict-4.7.4-cp37-cp37m-win_amd64.whl (48.5 kB view details)

Uploaded CPython 3.7m Windows x86-64

multidict-4.7.4-cp37-cp37m-win32.whl (46.3 kB view details)

Uploaded CPython 3.7m Windows x86

multidict-4.7.4-cp37-cp37m-manylinux1_x86_64.whl (149.2 kB view details)

Uploaded CPython 3.7m

multidict-4.7.4-cp37-cp37m-macosx_10_13_x86_64.whl (48.6 kB view details)

Uploaded CPython 3.7m macOS 10.13+ x86-64

multidict-4.7.4-cp36-cp36m-win_amd64.whl (48.4 kB view details)

Uploaded CPython 3.6m Windows x86-64

multidict-4.7.4-cp36-cp36m-win32.whl (46.3 kB view details)

Uploaded CPython 3.6m Windows x86

multidict-4.7.4-cp36-cp36m-manylinux1_x86_64.whl (148.0 kB view details)

Uploaded CPython 3.6m

multidict-4.7.4-cp36-cp36m-macosx_10_13_x86_64.whl (48.6 kB view details)

Uploaded CPython 3.6m macOS 10.13+ x86-64

multidict-4.7.4-cp35-cp35m-win_amd64.whl (48.6 kB view details)

Uploaded CPython 3.5m Windows x86-64

multidict-4.7.4-cp35-cp35m-win32.whl (46.1 kB view details)

Uploaded CPython 3.5m Windows x86

multidict-4.7.4-cp35-cp35m-manylinux1_x86_64.whl (147.8 kB view details)

Uploaded CPython 3.5m

multidict-4.7.4-cp35-cp35m-macosx_10_13_x86_64.whl (48.6 kB view details)

Uploaded CPython 3.5m macOS 10.13+ x86-64

File details

Details for the file multidict-4.7.4.tar.gz.

File metadata

  • Download URL: multidict-4.7.4.tar.gz
  • Upload date:
  • Size: 50.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4.tar.gz
Algorithm Hash digest
SHA256 d7d428488c67b09b26928950a395e41cc72bb9c3d5abfe9f0521940ee4f796d4
MD5 22b46f759cf2cc3ca1d2c9f82cc9bb79
BLAKE2b-256 b622ae21cedaa0e6d35e84e8ab57700dcf3d4609421ebe113e1aaafc468eec42

See more details on using hashes here.

Provenance

File details

Details for the file multidict-4.7.4-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: multidict-4.7.4-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 48.7 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 5414f388ffd78c57e77bd253cf829373721f450613de53dc85a08e34d806e8eb
MD5 738a19554442e6aec913f995b6ebb999
BLAKE2b-256 d32c97a18e30d507b7a46f3e3323fc81879e095457b20a6c68974b44e13b653a

See more details on using hashes here.

Provenance

File details

Details for the file multidict-4.7.4-cp38-cp38-win32.whl.

File metadata

  • Download URL: multidict-4.7.4-cp38-cp38-win32.whl
  • Upload date:
  • Size: 46.4 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 6bd10adf9f0d6a98ccc792ab6f83d18674775986ba9bacd376b643fe35633357
MD5 db6808bec1028ae34a3ce51c10bc4403
BLAKE2b-256 fc9b1393b7accf63adada91b4ffe226fea32b6732051bfd7d47777bd9fcb4cf3

See more details on using hashes here.

Provenance

File details

Details for the file multidict-4.7.4-cp38-cp38-manylinux1_x86_64.whl.

File metadata

  • Download URL: multidict-4.7.4-cp38-cp38-manylinux1_x86_64.whl
  • Upload date:
  • Size: 161.6 kB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4-cp38-cp38-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 83c6ddf0add57c6b8a7de0bc7e2d656be3eefeff7c922af9a9aae7e49f225625
MD5 25a03e83f9ca79be1b4103135075c24d
BLAKE2b-256 00f541da5ad125626600237b4ae6b148dd771c0c4d4acbdb2239f35caa74e767

See more details on using hashes here.

Provenance

File details

Details for the file multidict-4.7.4-cp38-cp38-macosx_10_13_x86_64.whl.

File metadata

  • Download URL: multidict-4.7.4-cp38-cp38-macosx_10_13_x86_64.whl
  • Upload date:
  • Size: 48.8 kB
  • Tags: CPython 3.8, macOS 10.13+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4-cp38-cp38-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 527124ef435f39a37b279653ad0238ff606b58328ca7989a6df372fd75d7fe26
MD5 723ec963c314b654740e5da0fa124a13
BLAKE2b-256 d9684ae8dfa823f9a06b3b1ef2af946ac7d6ab5e80feac94ee62efc073ceeb76

See more details on using hashes here.

Provenance

File details

Details for the file multidict-4.7.4-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: multidict-4.7.4-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 48.5 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 5eee66f882ab35674944dfa0d28b57fa51e160b4dce0ce19e47f495fdae70703
MD5 ac81669c807f080f501f8542bf5884c8
BLAKE2b-256 d6d872da24c385be0b7c6bdd9f1e710583a1b20ae65e5a1556ddada5a6bf6446

See more details on using hashes here.

Provenance

File details

Details for the file multidict-4.7.4-cp37-cp37m-win32.whl.

File metadata

  • Download URL: multidict-4.7.4-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 46.3 kB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 26502cefa86d79b86752e96639352c7247846515c864d7c2eb85d036752b643c
MD5 6142b7c37af7d504bbca5615ce18174b
BLAKE2b-256 10b30717ab891e0d49425c7657dd948d037fdd5763356bb15a822ea53a707ace

See more details on using hashes here.

Provenance

File details

Details for the file multidict-4.7.4-cp37-cp37m-manylinux1_x86_64.whl.

File metadata

  • Download URL: multidict-4.7.4-cp37-cp37m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 149.2 kB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4-cp37-cp37m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 63810343ea07f5cd86ba66ab66706243a6f5af075eea50c01e39b4ad6bc3c57a
MD5 335ee6f699d7cda5d506453580176f36
BLAKE2b-256 53c319e0912b456b1af8ac17c0a563d66fcc26c917c43ef98eefcfa18d0572dc

See more details on using hashes here.

Provenance

File details

Details for the file multidict-4.7.4-cp37-cp37m-macosx_10_13_x86_64.whl.

File metadata

  • Download URL: multidict-4.7.4-cp37-cp37m-macosx_10_13_x86_64.whl
  • Upload date:
  • Size: 48.6 kB
  • Tags: CPython 3.7m, macOS 10.13+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4-cp37-cp37m-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 a6d219f49821f4b2c85c6d426346a5d84dab6daa6f85ca3da6c00ed05b54022d
MD5 ade7804f79fb544d27c8dbfe79e4d81b
BLAKE2b-256 8111cf4089e39fae757cd9516b57d05b33becd7f574480a17bd41f88c37acbd9

See more details on using hashes here.

Provenance

File details

Details for the file multidict-4.7.4-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: multidict-4.7.4-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 48.4 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 4fba5204d32d5c52439f88437d33ad14b5f228e25072a192453f658bddfe45a7
MD5 9924104391b69fd5aa3bc6bea79c44c2
BLAKE2b-256 f31d1db770463fa47d05c7a11b54353ee12cde4ff00b39397ff6b55517b69f7d

See more details on using hashes here.

Provenance

File details

Details for the file multidict-4.7.4-cp36-cp36m-win32.whl.

File metadata

  • Download URL: multidict-4.7.4-cp36-cp36m-win32.whl
  • Upload date:
  • Size: 46.3 kB
  • Tags: CPython 3.6m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 13f3ebdb5693944f52faa7b2065b751cb7e578b8dd0a5bb8e4ab05ad0188b85e
MD5 b2422c1f9bd8d5e7542c7e07c98a8e41
BLAKE2b-256 5279586ff815f7dd7586d42e52e2025069407776be4a1922aa3352ebdb134656

See more details on using hashes here.

Provenance

File details

Details for the file multidict-4.7.4-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

  • Download URL: multidict-4.7.4-cp36-cp36m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 148.0 kB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 f29b885e4903bd57a7789f09fe9d60b6475a6c1a4c0eca874d8558f00f9d4b51
MD5 889d3311735d3e246719b4e28123094b
BLAKE2b-256 065ad423c846bb839105143d4cd90da19d0f3fc972c51be651f92ac419a20698

See more details on using hashes here.

Provenance

File details

Details for the file multidict-4.7.4-cp36-cp36m-macosx_10_13_x86_64.whl.

File metadata

  • Download URL: multidict-4.7.4-cp36-cp36m-macosx_10_13_x86_64.whl
  • Upload date:
  • Size: 48.6 kB
  • Tags: CPython 3.6m, macOS 10.13+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4-cp36-cp36m-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 dcfed56aa085b89d644af17442cdc2debaa73388feba4b8026446d168ca8dad7
MD5 1c45106268c03ff763274950f3c65636
BLAKE2b-256 314cdd0f153ba03cffc8f9bdae25883d208df7949b6c82bb213a87d332654c20

See more details on using hashes here.

Provenance

File details

Details for the file multidict-4.7.4-cp35-cp35m-win_amd64.whl.

File metadata

  • Download URL: multidict-4.7.4-cp35-cp35m-win_amd64.whl
  • Upload date:
  • Size: 48.6 kB
  • Tags: CPython 3.5m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 9a7b115ee0b9b92d10ebc246811d8f55d0c57e82dbb6a26b23c9a9a6ad40ce0c
MD5 d58e34f817a9e72fb03dec4294605c99
BLAKE2b-256 082c8d820221ebfd93441b0d86d7b0fa69143d3ac4ce6714850a5005fe36f976

See more details on using hashes here.

Provenance

File details

Details for the file multidict-4.7.4-cp35-cp35m-win32.whl.

File metadata

  • Download URL: multidict-4.7.4-cp35-cp35m-win32.whl
  • Upload date:
  • Size: 46.1 kB
  • Tags: CPython 3.5m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 a38baa3046cce174a07a59952c9f876ae8875ef3559709639c17fdf21f7b30dd
MD5 5966405df28cc6818badc23d1ea49d7c
BLAKE2b-256 6063026dce23534d6043d4c0785a008636156c741360889b027899fc6b11c918

See more details on using hashes here.

Provenance

File details

Details for the file multidict-4.7.4-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

  • Download URL: multidict-4.7.4-cp35-cp35m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 147.8 kB
  • Tags: CPython 3.5m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 a8ed33e8f9b67e3b592c56567135bb42e7e0e97417a4b6a771e60898dfd5182b
MD5 74f6a38f21396b31bf54e1ce461877f1
BLAKE2b-256 fa3fc9f14f467167aeb0ca41fa7775ea804c981c2290ff2cd6b8c058d4f93bba

See more details on using hashes here.

Provenance

File details

Details for the file multidict-4.7.4-cp35-cp35m-macosx_10_13_x86_64.whl.

File metadata

  • Download URL: multidict-4.7.4-cp35-cp35m-macosx_10_13_x86_64.whl
  • Upload date:
  • Size: 48.6 kB
  • Tags: CPython 3.5m, macOS 10.13+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5

File hashes

Hashes for multidict-4.7.4-cp35-cp35m-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 93166e0f5379cf6cd29746989f8a594fa7204dcae2e9335ddba39c870a287e1c
MD5 118519ef0fa534def5f9e7e642c9ec87
BLAKE2b-256 9c0f0348902b878fff522fd6b12c841eb45156a19e6372d85e11ce4fee2fe091

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page