Library for easy work with the python dictionary
Project description
What's the good of that?
- Validate and transform an incoming dictionary based on schema rules
- Get the dictionary value and cast string representation to target data type
- Available types:
"object": raw object
"str": textual data
"int": integer numeric type
"float": float numeric type
"decimal": decimal numeric type
"list": list sequence type
"datetime": a datetime object is a single object containing all the information from a date object and a time object
"date": a date object represents a date (year, month and day)
"bool": boolean values are the two constant objects False and True
- Set default value if result is None
- Get the required dictionary value and cast it to data type
- Get the required dictionary value and raise error if value is empty
install
pip install power-dict
import
from power_dict.utils import DictUtils
Run unittest from console
python -m unittest discover -p "*_tests.py"
SchemaValidator.validate(context: dict, schema: list, sanitize_schema: bool = True) -> dict
Validation and transformation of 'context' dictionary in accordance with the rules of the scheme. See tests for examples.
DictUtils.get_value(properties: dict, key: str, **kwargs) -> object
Get the dictionary value and cast it to object. See tests for examples.
DictUtils.get_required_value(properties: dict, key: str, **kwargs) -> object
Get the required dictionary value and cast it to object. See tests for examples.
DictUtils.get_setting_by_path(properties: dict, path: str, **kwargs) -> object
Get the dictionary value and cast it to object by path. See tests for examples.
DictUtils.get_dict_property(properties: dict, key: str, default_value=None) -> object
Get the dictionary value. See tests for examples.
DictUtils.get_required_dict_property(properties: dict, key: str, required_error=None) -> object
Get the required dictionary value. See tests for examples.
DictUtils.get_str_dict_property(properties: dict, key: str, default_value='') -> str
Get the dictionary value and cast it to 'str'. See tests for examples.
DictUtils.get_required_str_dict_property(properties: dict, key: str, required_error=None) -> str
Get the required dictionary value and cast it to 'str'. See tests for examples.
DictUtils.get_int_dict_property(properties: dict, key: str, default_value=None) -> int
Get the dictionary value and cast it to 'int'. See tests for examples.
DictUtils.get_required_int_dict_property(properties: dict, key: str, required_error=None) -> int
Get the required dictionary value and cast it to 'int'. See tests for examples.
DictUtils.get_datetime_dict_property(properties: dict, key: str, default_value: datetime = None, format: str = None) -> datetime
Get the dictionary value and cast it to 'datetime'. See tests for examples. Format Codes.
DictUtils.get_required_datetime_dict_property(properties: dict, key: str, required_error=None, format: str = None) -> datetime
Get the required dictionary value and cast it to 'datetime'. See tests for examples. Format Codes.
DictUtils.get_date_dict_property(properties: dict, key: str, default_value=None, format: str = None) -> datetime.date
Get the dictionary value and cast it to 'date'. See tests for examples. Format Codes.
DictUtils.get_required_date_dict_property(properties: dict, key: str, required_error=None, format: str = None) -> datetime.date
Get the required dictionary value and cast it to 'date'. See tests for examples. Format Codes.
DictUtils.get_bool_dict_property(properties: dict, key: str, default_value=None) -> bool
Get the dictionary value and cast it to 'bool'. See tests for examples.
DictUtils.get_required_bool_dict_property(properties: dict, key: str, required_error=None) -> bool
Get the required dictionary value and cast it to 'bool'. See tests for examples.
DictUtils.get_decimal_dict_property(properties: dict, key: str, default_value=None) -> Decimal
Get the dictionary value and cast it to 'decimal'. See tests for examples.
DictUtils.get_required_decimal_dict_property(properties: dict, key: str, required_error=None) -> Decimal
Get the required dictionary value and cast it to 'decimal'. See tests for examples.
DictUtils.get_list_dict_property(properties: dict, key: str, default_value=None) -> list
Get the dictionary value and cast it to 'list'. See tests for examples.
DictUtils.get_required_list_dict_property(properties: dict, key: str, required_error=None) -> list
Get the required dictionary value and cast it to 'list'. See tests for examples.
DictUtils.get_float_dict_property(properties: dict, key: str, default_value=None) -> float
Get the dictionary value and cast it to 'float'. See tests for examples.
DictUtils.get_required_float_dict_property(properties: dict, key: str, required_error=None) -> float
Get the required dictionary value and cast it to 'float'. See tests for examples.
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
Built Distribution
Hashes for power_dict-0.0.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b7b948d6452d2e4f0846d397d0dc94aaec4e7fb72da1382242a5be65b4dfaae4 |
|
MD5 | e17b5e1ec9d37e070c1a19a1a4b35afe |
|
BLAKE2b-256 | 4d3cb0218219ddc1087a22e1c92ce0783463a793550698d7ec9654290e463e63 |