Named functions, ignore Exceptions decorator with parameters, multiple functions execution ...
Project description
Some useful stuff for functions
NamedFunction
pip install useful-functions-easier-life
namedfunctiontest = NamedFunction(
name="myfunction",
execute_function=execute_several_functions_insideout(
lambda x: x * 100, lambda x: x / 10, lambda x: x * 5, lambda x: x + 1000
),
name_function=lambda: "This is my function",
str_prefix="Surprise",
print_before_execution="My function\n",
str_suffix="Let's go!",
ljust_prefix=10,
rjust_prefix=30,
ljust_suffix=20,
rjust_suffix=10,
)
namedfunctiontest
Out[3]: Surprise This is my function Let's go!
#Without namedfunction:
#ca2
#Out[7]: <function __main__.execute_several_functions_insideout.<locals>.deco(f)>
namedfunctiontest(5)
My function
Out[6]: 50250.0
ignore_exceptions_decorator
from random import choice
@ignore_exceptions_decorator(print_exception=True, exception_value=False, disable=False)
def testest(number):
if number == 0:
return True
elif number == 1:
print(number / 0)
return True
testex = [testest(choice([0, 1])) for x in range(10)]
division by zero
division by zero
testex
Out[3]: [True, True, False, True, False, True, True, True, True, True]
#https://stackoverflow.com/questions/5929107/decorators-with-parameters
#Blueprint for other useful stuff
execute_several_functions_insideout
ca2 = execute_several_functions_insideout(
lambda x: x * 100, lambda x: x / 10, lambda x: x * 5, lambda x: x + 1000
)
ca2(5)
Out[6]: 50250.0
(1000+5) * 5 / 10 * 100
Out[18]: 50250.0
execute_several_functions_one_after_another
allfunctions=lambda x: (x, isinstance(x,str)),lambda x: str(x) + '-1000', lambda x:x*5, lambda x: isinstance(x,str)
ca=execute_several_functions_one_after_another(allfunctions)
ca(101)
Out[4]: [(101, False), '101-1000', 505, False]
ignore_exceptions
testex = [ignore_exceptions(divmod, 50, choice([0, 1]),exception_value=(0,0)) for x in range(10)]
testex
Out[7]:
[(50, 0),
(0, 0),
(0, 0),
(0, 0),
(50, 0),
(50, 0),
(50, 0),
(50, 0),
(50, 0),
(0, 0)]
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for useful_functions_easier_life-0.14.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 12bfff96590b4fbab16bc26f252a00fe53764d7cf510ad7c62d2c47bc0b0b514 |
|
MD5 | cf843f68de3d15e9ef005688cab2fb9f |
|
BLAKE2b-256 | 563260e84ecd23a3f9940dac3183d320c9a618af240a929bd636e401a4a8a9f0 |
Close
Hashes for useful_functions_easier_life-0.14-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 991a67e240c30828e165c79c9e92dd95588f65d42fe1de0ddcd1c0da6fda1b66 |
|
MD5 | a623a4e7aa929c458e4600c1d0220d49 |
|
BLAKE2b-256 | 59e8dad5da8ed08f9f6937244ba6546e4dd9d85864e31f59a74ffb6e26921a94 |