evargs package¶
validator module¶
- class Validator¶
Bases:
object
- validate_size(name, v, size)¶
- Parameters
name (str) –
v (str) –
size (int) –
- validate_between(name, v, min_size, max_size)¶
- Parameters
name (str) –
v (str) –
min_size (int) –
max_size (int) –
- validate_alphabet(name, v)¶
- Parameters
name (str) –
v (str) –
- validate_alphanumeric(name, v)¶
- Parameters
name (str) –
v (str) –
- validate_ascii(name, v)¶
- Parameters
name (str) –
v (str) –
- validate_printable_ascii(name, v)¶
- Parameters
name (str) –
v (str) –
- validate_standard_ascii(name, v)¶
- Parameters
name (str) –
v (str) –
- validate_char_numeric(name, v)¶
- Parameters
name (str) –
v (str) –
- validate_regex(name, v, regex, *args)¶
- Parameters
name (str) –
v (any) –
regex (str) –
- validate_range(name, v, min_v, max_v)¶
- Parameters
name (str) –
v (any) –
- validate_unsigned(name, v)¶
- Parameters
name (str) –
v (any) –
- validate_even(name, v)¶
- Parameters
name (str) –
v (any) –
- validate_odd(name, v)¶
- Parameters
name (str) –
v (any) –
- raise_error(msg, code=2)¶
The example is here.
self.validator.validate_size('var1', 'abc', 3)
self.validator.validate_between('var1', 'abc', 1, 10)
self.validator.validate_printable_ascii('var1', 'abc123ñ')
self.validator.validate_regex('test1', 'var1', r'^[a-z0-9]+$')
self.validator.validate_regex('dna', 'ATGCGTACGTAGCTAGCTAGCTAGCATCGTAGCTAGCTAGC', r'^[ATGC]+$')
self.validator.validate_unsigned('var1', 123)
self.validator.validate_range('var1', 5, 1, 10)
value_caster module¶
- class ValueCaster¶
Bases:
object
- classmethod to_int(v, ignore_error=False)¶
- Return type
int
- Parameters
v (any) –
ignore_error (bool) –
- classmethod to_float(v, ignore_error=False)¶
- Return type
float
- Parameters
v (any) –
ignore_error (bool) –
- classmethod to_complex(v, ignore_error=False)¶
- Return type
complex
- Parameters
v (any) –
ignore_error (bool) –
- classmethod to_bool(v, strict=False)¶
- Return type
Optional
[bool
]- Parameters
v (any) –
strict (bool) –
- classmethod bool_strict(v)¶
- Return type
int
- Parameters
v (any) –
- classmethod to_enum(enum_class, v, illegal_value=None, is_value=True, is_name=False)¶
- Return type
Enum
- Parameters
enum_class (Type[enum.Enum]) –
v (any) –
illegal_value (Optional[enum.Enum]) –
is_value (bool) –
is_name (bool) –
- classmethod to_enum_loose(enum_class, v, illegal_value=None, is_value=True, is_name=False)¶
- Return type
Enum
- Parameters
enum_class (Type[enum.Enum]) –
v (any) –
illegal_value (Optional[enum.Enum]) –
is_value (bool) –
is_name (bool) –
The example is here.
ValueCaster.to_int(' 1 ')
ValueCaster.to_int(' aaa ', ignore_error=True)
ValueCaster.to_float(' aaa ')
ValueCaster.to_float(' aaa ', ignore_error=True)
ValueCaster.to_bool('1')
ValueCaster.to_bool('1', True)
ValueCaster.to_enum(Color, 1)
ValueCaster.to_enum(Color, 'RED', is_name=True)
ValueCaster.to_enum_loose(Color, 1)
ValueCaster.to_enum_loose(Color, '3.5')
ValueCaster.to_enum_loose(Color, 'BLUE', is_name=True, is_value=False)
ValueCaster.to_enum(Color, 'AAA', illegal_value=Color.WHITE)
help_formatter module¶
- class HelpFormatter¶
Bases:
evargs.list_formatter.ListFormatter
- DEFAULT_COLUMNS = {'default': 'Default', 'help': 'Description', 'name': 'Parameter', 'require': 'Require', 'type': 'Type', 'validation': 'Validation'}¶
- enable_example(label=None)¶
- Parameters
label (Optional[str]) –
- class ListFormatter¶
Bases:
object
- set_columns(columns)¶
- Parameters
columns (dict) –
- set_column(name, value)¶
- Parameters
name (str) –
value (any) –
- set_column_max_size(v)¶
- Parameters
v (int) –
- make(rows, params=None, skip_headers=False)¶
- Return type
str
- Parameters
rows (Union[list, dict]) –
params (Optional[list]) –
skip_headers (bool) –
ListFormatter class can also be used independently to adjust and display dict and list data. The example is here.
# python3 show_list_data.py
Compound Name | Elements | Molecular Formula | Melting Point | Uses
--------------------------------------------------------------------------------------------------------------------------
Aspirin | Carbon (C), Hydrogen (H), Oxygen (O) | C9H8O4 | 135°C | Pain reliever
Glucose | Carbon (C), Hydrogen (H), Oxygen (O) | C6H12O6 | 146°C | Energy source
Acetaminophen | Carbon (C), Hydrogen (H), Nitrogen (N), Oxygen (O) | C8H9NO | 169-172°C | Pain reliever
Niacin | Carbon (C), Hydrogen (H), Nitrogen (N) | C6H5NO2 | 234-236°C | Nutrient
Salicylic Acid | Carbon (C), Hydrogen (H), Oxygen (O) | C7H6O3 | 158-160°C | Preservative