Романов Алексей, группа 627 CorrectFloat 14127
Абрамов Валентин, 517 группа CorrectFloat 13934
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, fun):n8    def __call__(self, f):
99
t10        @wraps(fun)t10        @wraps(f)
11        def wrapper(*args, **kwds):11        def wrapper(*args, **kwargs):
12            new_args = [round(arg, self.n) if isinstance(arg, float) els12            round_args = [round(arg, self.n) if isinstance(arg, float) e
>e arg for arg in args]>lse arg for arg in args]
13            new_kwds = {k: round(w, self.n) if isinstance(w, float) else13            round_kwargs = {k: round(v, self.n) if isinstance(v, float) 
> w for k, w in kwds.items()}>else v for k, v in kwargs.items()}
14            res = fun(*new_args, **new_kwds)14            ret = f(*round_args, **round_kwargs)
15            return round(res, self.n) if isinstance(res, float) else res15            return round(ret, self.n) if isinstance(ret, float) else ret
16        return wrapper16        return wrapper
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op