Provides an Undefined constant.
Project description
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
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
py-undefined-0.1.7.tar.gz
(6.8 kB
view hashes)
Built Distribution
Close
Hashes for py_undefined-0.1.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d0f4c9b183ff6ab616b40748ab0edd80f46ff25b22b30433e3fed6a33971545a |
|
MD5 | eedaf7e6f6e383da7bcc058353d1dce8 |
|
BLAKE2b-256 | 05dba8d4bc4c00ea8fbe483f5ef07ac394953779f24a13a8e14fadb3018cf633 |