From 30f4a4c94ac4ebf5d62c2e6614de63be9b78f78a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=9Eerif=20Burak=20Kalkan?= <112409866+serif1705@users.noreply.github.com> Date: Wed, 27 Nov 2024 13:48:18 +0300 Subject: [PATCH] =?UTF-8?q?Create=20functions=5F=C5=9Ferifburak=5Fkalkan.p?= =?UTF-8?q?y?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions_\305\237erifburak_kalkan.py" | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 "Week04/functions_\305\237erifburak_kalkan.py" diff --git "a/Week04/functions_\305\237erifburak_kalkan.py" "b/Week04/functions_\305\237erifburak_kalkan.py" new file mode 100644 index 00000000..47c4f5b8 --- /dev/null +++ "b/Week04/functions_\305\237erifburak_kalkan.py" @@ -0,0 +1,27 @@ +custom_power = lambda x=0, /, e=1: x ** e + + +def custom_equation(x:int=0, y:int=0 , / ,a:int=1,b:int=1,*,c:int=1) -> float: + """ + :param x: Positional-only base value for the first term; defaults to 0. + :param y: Positional-only base value for the second term; defaults to 0. + :param a: Exponent for `x`, can be used as positional or keyword; defaults to 1. + :param b: Exponent for `y`, can be used as positional or keyword; defaults to 1. + :param c: Keyword-only divisor for the result; defaults to 1. + :return: The result of the equation `(x**a + y**b) / c`. + :rtype: float. + """ + return (x**a + y**b) / c + + +def fn_w_counter() -> (int, dict[str, int]): + if not hasattr(fn_w_counter, "call_count"): + fn_w_counter.call_count = 0 + fn_w_counter._dict = {} + caller_name = __name__ + fn_w_counter.call_count += 1 + if caller_name in fn_w_counter._dict: + fn_w_counter._dict[caller_name] += 1 + else: + fn_w_counter._dict[caller_name] = 1 + return fn_w_counter.call_count, fn_w_counter._dict