Skip to main content

An improvement to Python's kwargs

Project description

Chocolate

Chocolate is a Python package that improves Python's **kwargs.

from chocolate import filter_args


# Here is some function.
def example_function(arg1, arg2: int, arg3=3, arg4: str = ""):
    print(f"{arg1} {arg2} {arg3} {arg4}")

# We can give this function a dictionary of arguments using **kwargs.
kwargs = {"arg1": 1, "arg2": 2, "arg4": "4"}
example_function(**kwargs)

# But what if the **kwargs dictionary has additional keys?
broken_kwargs = {"arg1": "This", "arg2": "does", "undefined_arg": "not", "arg3": "work"}
try:
    example_function(**broken_kwargs)
except Exception as exception:
    print(exception)

# Chocolate can take care of that!
example_function(**filter_args(broken_kwargs, example_function))

Project details


Download files

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

Source Distribution

chocolate-0.0.2.tar.gz (1.7 kB view details)

Uploaded Source

Built Distribution

chocolate-0.0.2-py3-none-any.whl (2.1 kB view details)

Uploaded Python 3

File details

Details for the file chocolate-0.0.2.tar.gz.

File metadata

  • Download URL: chocolate-0.0.2.tar.gz
  • Upload date:
  • Size: 1.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for chocolate-0.0.2.tar.gz
Algorithm Hash digest
SHA256 3474af447e11c592635afae2578d8f425351045949dc1c2fd3a98dd859b5816c
MD5 03c04aa18c0f6240581a3c815de50882
BLAKE2b-256 346afb1e15a5335e53024a0b021cca740a5ae7b68f78586c20bed5b0938218fa

See more details on using hashes here.

File details

Details for the file chocolate-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: chocolate-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 2.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for chocolate-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 071ea6177492d80c903eb6c7c30638a2d97d9561ace40b7b5c3f2b220c3a246e
MD5 b050388a94eb1d84559ba3b91ea9d3fc
BLAKE2b-256 ecdf206fea3fbad2b8c709f9bad919515aa7658b631dd95e7de49978343d7007

See more details on using hashes here.

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