Skip to main content

Provides an Undefined constant.

Project description

Py-Undefined

A light-weight dependency free library providing an Undefined type to Python.

Install

Py-Undefined is on PyPI and can be installed with:

pip install py-undefined

Or with Poetry

poetry add py-undefined

Usage

The Undefined class from this module can be used as a variable type and a value.

from py_undefined import Undefined

a: Undefined | int = Undefined

assert a is Undefined

Why?

This is very useful to web frameworks that need to distinguish between receiving null as a parameter value vs not receiving that parameter at all.

Example

# Framework that can now pass `Undefined` instead of `None` to method if param was absent from request.
@framework.method()
def update(a: int | Undefined, b: int | None | Undefined) -> None:
    if a is not Undefined:
        ...
    if b is not Undefined:
        ...

This allows for a client to use this method to update only what values are provided.

my_client.update(b=1)  # Set b.
my_client.update(a=2)  # Set a without setting b to None.
my_client.update(b=None)  # b can be set to None explicitly.

Support The Developer

Buy Me A Coffee

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

py-undefined-0.1.4.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

py_undefined-0.1.4-py3-none-any.whl (6.7 kB view details)

Uploaded Python 3

File details

Details for the file py-undefined-0.1.4.tar.gz.

File metadata

  • Download URL: py-undefined-0.1.4.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.12 CPython/3.10.12 Linux/6.6.6-76060606-generic

File hashes

Hashes for py-undefined-0.1.4.tar.gz
Algorithm Hash digest
SHA256 7b3512da22eb161d3a3331415eabf2c573d3f595aa63367e82e16df48a571044
MD5 bcc605c08bd1dd59faa99bdefe91353b
BLAKE2b-256 134758cf05ccabdda38f124735e5c013202db7531253edee12c4bf5e87c4e1b2

See more details on using hashes here.

File details

Details for the file py_undefined-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: py_undefined-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 6.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.12 CPython/3.10.12 Linux/6.6.6-76060606-generic

File hashes

Hashes for py_undefined-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 a5205b56bbe570fd18d23685c846a71e1eec4c45d81444996ba4b6167d7547c0
MD5 db101cdbadec7b96ba713fa38917530c
BLAKE2b-256 4524add387ea7dd3ca7f64dddebd95339c9b20da21dbeb9eb67d025f27ce8695

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