The dataclass_plus is a fastest type validation library for the dataclass
Project description
dataclass_plus
The dataclass_plus
is a fastest type validation library for the dataclass
Install
pip install dataclass-plus
Example
from dataclass_plus import dataclass_plus
from typing import List, Dict, Tuple
@dataclass_plus
class Model:
id: int
name: str
dict_example: Dict[str, str]
list_example: List[int] # this field is required
tuple_example: Tuple[str, float] = None # this field is not required because set default None
Model(
id=1,
name='Test Test',
dict_example={"test": "test"},
list_example=[1,2],
tuple_example=("test", 1.2)
)
# => Model(id=1, name='Test Test', dict_example={"test": "test"}, list_example=[1,2], tuple_example=("test", 1.2))
# Invalid Model
Model(
id=1,
name='Test Test',
dict_example={"test": 1},
list_example=[1,2],
tuple_example=("test", 1.2)
)
# => ValueError: {'test': 1} is not typing.Dict[str, str]
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
dataclass_plus-1.0.5.tar.gz
(4.8 kB
view hashes)
Built Distribution
Close
Hashes for dataclass_plus-1.0.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5f76df18585c91477cdec98ae2d3dd07ff6393c85d0352b30864f36a1a31b824 |
|
MD5 | 2c28be7450061836bb46c90b53e706c5 |
|
BLAKE2b-256 | c44a72a3c7d755daba406bee6b177000d0be525bb9be8e76ee6b3f09045670b5 |