Абрамов Валентин, 517 группа CorrectFloat 13934
Адель 321 CorrectFloat 14229
f1from functools import wrapsf1from functools import wraps
22
3class Fix:3class Fix:
44
5    def __init__(self, n):5    def __init__(self, n):
6        self.n = n6        self.n = n
77
n8    def __call__(self, f):n8    def __call__(self, func):
99
n10        @wraps(f)n10        @wraps(func)
11        def wrapper(*args, **kwargs):11        def wrapper(*args, **kwargs):
t12            round_args = [round(arg, self.n) if isinstance(arg, float) et12            rounded_args = [round(arg, self.n) if isinstance(arg, float)
>lse arg for arg in args]> else arg for arg in args]
13            round_kwargs = {k: round(v, self.n) if isinstance(v, float) 13            rounded_kwargs = {k: round(v, self.n) if isinstance(v, float
>else v for k, v in kwargs.items()}>) else v for k, v in kwargs.items()}
14            ret = f(*round_args, **round_kwargs)14            result = func(*rounded_args, **rounded_kwargs)
15            return round(ret, self.n) if isinstance(ret, float) else ret15            return round(result, self.n) if isinstance(result, float) el
 >se result
16        return wrapper16        return wrapper
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op