Provide error messages for Python exceptions, even if the original message is empty
Project description
errortext
errortext
is a Python package to provide error messages for Python
exceptions, even if the original message is empty.
As example consider the following function that might fail in different ways:
from errortext import error_text
def do_something(action_to_perform):
if action_to_perform == "walk":
print("walking")
elif action_to_perform == "sleep":
raise ValueError("must be tired in order to sleep")
elif action_to_perform == "run":
raise NotImplementedError("run")
else:
assert False
One could use the following code to run this function and print possible
error details by using the error message of the exception from
str(error)
:
try:
do_something(action)
print(f"Success: done with {action}")
except Exception as error:
print(f"Error: cannot {action}: {str(error)}")
As you notice, some error will not have any meaningful message:
do_something("sleep") -> cannot sleep: must be tired in order to sleep
do_something("run") -> cannot run: run
do_something("xxx") -> cannot xxx:
No change the error handler to:
print(f"Error with error_text: cannot {action}: {error_text(error)}")
The error messages will at least contain some hint at what went wrong:
do_something("sleep") -> cannot sleep: must be tired in order to sleep
do_something("run") -> cannot run: NotImplementedError: run
do_something("xxx") -> cannot xxx: AssertionError
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 Distributions
Built Distribution
File details
Details for the file errortext-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: errortext-0.1.0-py3-none-any.whl
- Upload date:
- Size: 3.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 330ad6ec71f274feccc7483ee3ca3a77a42684f0acc234fe9f0f7da7ec3d631f |
|
MD5 | d48d49e7dda8c7af8ea04ca0a7e41a98 |
|
BLAKE2b-256 | b384bc4fa95bf6f994485e1c1241d02e93bb600be66d024e6b4febe0864d749a |