Skip to main content
Help the Python Software Foundation raise $60,000 USD by December 31st!  Building the PSF Q4 Fundraiser

Library for easy work with the python dictionary

Project description

What's the good of that?

PyPI version Supported Python versions License

  1. Validate and transform an incoming dictionary based on schema rules
  2. Get the dictionary value and cast string representation to target data type
  3. 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

  1. Set default value if result is None
  2. Get the required dictionary value and cast it to data type
  3. 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for power-dict, version 0.0.13
Filename, size File type Python version Upload date Hashes
Filename, size power_dict-0.0.13-py3-none-any.whl (17.5 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size power_dict-0.0.13.tar.gz (10.3 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page