Артемов Арсений 402 CorrectFloat 14274
Багров Александр Михайлович, 317 группа CorrectFloat 13382
f1from functools import wrapsf1from functools import wraps
22
3class Fix:3class Fix:
44
5    def __init__(self, n):5    def __init__(self, n):
n6        self._n = nn6        self.n = n
77
8    def __call__(self, func):8    def __call__(self, func):
99
10        @wraps(func)10        @wraps(func)
11        def wrapper(*args, **kwargs):11        def wrapper(*args, **kwargs):
1212
n13            def round_if_float(value):n13            def round_value(value):
14                if isinstance(value, float):14                if isinstance(value, float):
n15                    return round(value, self._n)n15                    return round(value, self.n)
16                else:
17                    return value16                return value
18            rounded_args = tuple((round_if_float(arg) for arg in args))17            rounded_args = tuple((round_value(arg) for arg in args))
19            rounded_kwargs = {key: round_if_float(value) for key, value 18            rounded_kwargs = {key: round_value(val) for key, val in kwar
>in kwargs.items()}>gs.items()}
20            result = func(*rounded_args, **rounded_kwargs)19            result = func(*rounded_args, **rounded_kwargs)
t21            return round_if_float(result)t20            return round_value(result)
22        return wrapper21        return wrapper
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op