A python library for variable type checker/validator/converter at run time.
Project description
Usage
Type Check
>>> from pytypeutil.type import Integer >>> Integer(1).is_type() True >>> Integer(1.1).is_type() False
Type Validation
>>> from pytypeutil.type import Integer >>> Integer(1).validate() >>> try: ... Integer(1.1).validate() ... except TypeError as e: ... print(e) ... invalid value type: expected=INTEGER, actual=<type 'float'>
Type Conversion
convert
>>> from pytypeutil.type import Integer >>> from pytypeutil import TypeConversionError >>> Integer("1").convert() 1 >>> try: ... Integer(1.1).convert() ... except TypeConversionError as e: ... print(e) ... failed to convert from float to INTEGER
try_convert
>>> from pytypeutil.type import Integer >>> Integer("1").try_convert() 1 >>> print(Integer(1.1).try_convert()) None
force_convert
>>> from pytypeutil.type import Integer >>> Integer("1").force_convert() 1 >>> Integer(1.1).force_convert() 1
For more information
More examples are available at http://pytypeutil.rtfd.io/en/latest/pages/reference/index.html
Features
Supported types are as follows:
- bool
- datetime
- dict
- int
- float
- Real number
- Infinite
- Not a number
- None
- str
- null string
Type check/validate/convert results will be decided according to strict_level which can be passed to constructors. API reference can be found at the document.
Installation
pip install pytypeutil
Dependencies
Python 2.7+ or 3.3+
Test dependencies
Documentation
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.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size pytypeutil-0.0.1-py2.py3-none-any.whl (26.6 kB) | File type Wheel | Python version 2.7 | Upload date | Hashes View |
Filename, size pytypeutil-0.0.1.tar.gz (17.6 kB) | File type Source | Python version None | Upload date | Hashes View |
Close
Hashes for pytypeutil-0.0.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fbee0bc8a6494f9869fc4fd55611654a224d493f0960a3ca9cdd1ffeb2d530c0 |
|
MD5 | 0d8ef196c9688e46bdf583f74f4a87e2 |
|
BLAKE2-256 | aec9d0fb1491a0beef768e6d8b4a4558ec640d1afb5ef2e05a9d764f283d9917 |