Zen utility library, helpful utility functions and decorators.
Project description
Zen Utilities
Helpful utility functions/decorators.
@handle_plural
This decorator is designed to be added to functions, automatically expands pased dicts/lists into the function it wraps.
This function does not return values for most operations, it is designed to be used within a class where the wrapped function sets class attributes.
NoDupFlatList
Essentially a dumb set, but is a list so is ordered
pretty_print
A function designed to print complex data structures in a nice manner
replace_file_line
Replaces a line in a file
def replace_file_line(file_path, old_line, new_line):
update_init
Used by @add_thread
, appends the passed function to the init of a class.
walk_dict
Takes two dicts as args, walks the first dict using the structure of the second dict.
If fail_safe
is set, returns none when keys can't be found.
check_dict
This decorator can be added to a function to check for the presence or lack of a dict item.
By default, it will print an error message, but will use self.logger if it exists in the class whose method is decorated. This logger will be created automatically if the clsss is wrapped with @loggify.
The first arg (key
) is required. The validate_dict
arg is initially unset, and allows the dict which is being checked to be changed.
If key
is a dict, the structure will be used to walk the validate_dict
.
The decorator will read args[0] at runtime, and if this is a dict, it will use that if
validate_dict
is not set. Functionally, this readsself
and allows this decorator to be used to check for dict items within a class with a__dict__
value_arg
Defines the value to compare found keys against.contains
Is a boolean that enables checking for thevalue_arg
as the name of a key invalidate_dict
.unset
Is a boolean used to make validation pass if thekey
is not found.raise_exception
Causes a ValueError to be rasied instead of printing an error message.log_level
(10) Defines the log level to send the message to.return_val
(False) Defines the default return value to use when validation fails.return_arg
Return this argument (by number) when validation fails.message
Set the vailidation failure message.
Additional arguments exist to set a value to compare found keys against
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
File details
Details for the file zen_util-1.0.0.tar.gz
.
File metadata
- Download URL: zen_util-1.0.0.tar.gz
- Upload date:
- Size: 13.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c2085cef4b912bd0b17d3dc468f9e831acb09ea4341feba37166180f7e54d4a5 |
|
MD5 | 3153d6945a0f8f664b8950898187b558 |
|
BLAKE2b-256 | 46d946280fbfa5dcf50108b67f7b2522e1cbc2fc848d4760db6b535eb4289ad5 |