Skip to main content

Py-Undefined

A light-weight 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

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.7.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: py-undefined-0.1.7.tar.gz
  • Upload date:
  • Size: 6.8 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.7.tar.gz
Algorithm Hash digest
SHA256 9fb4c64ea60ad71661db9567f3e3e2847fbb4e95cd02d3703418c0b3297f746a
MD5 67f7fb55836a7915fa70f2f1cef5d0f1
BLAKE2b-256 9ed8cc892022e629e1d8aff78627b095a81c780eb17740fadca00768c6768e67

See more details on using hashes here.

File details

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

File metadata

  • Download URL: py_undefined-0.1.7-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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 d0f4c9b183ff6ab616b40748ab0edd80f46ff25b22b30433e3fed6a33971545a
MD5 eedaf7e6f6e383da7bcc058353d1dce8
BLAKE2b-256 05dba8d4bc4c00ea8fbe483f5ef07ac394953779f24a13a8e14fadb3018cf633

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.7 This release

2 files

0.1.5

2 files

0.1.4

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page