TypeCast/Egor_Feklisov | TypeCast/Aleksyav | ||||
---|---|---|---|---|---|
f | 1 | from functools import wraps | f | 1 | from functools import wraps |
2 | 2 | ||||
3 | 3 | ||||
n | 4 | def cast(arg): | n | 4 | def cast(t): |
5 | def decorator(func): | 5 | def decorator(f): | ||
6 | @wraps(func) | 6 | @wraps(f) | ||
7 | def wrapper(*args, **kw): | 7 | def newfun(*args, **kwargs): | ||
8 | return arg(func(*args, **kw)) | 8 | return t(f(*args, **kwargs)) | ||
9 | return wrapper | 9 | return newfun | ||
10 | return decorator | 10 | return decorator | ||
11 | 11 | ||||
t | 12 | t | |||
13 | # if __name__ == "__main__": | ||||
14 | # @cast(int) | ||||
15 | # def fun(a, b): | ||||
16 | # return a * 2 + b | ||||
17 | # print(fun(12, 34) * 2) | ||||
18 | # print(fun("12", "34") * 2) | ||||
19 | # print(fun(12.765, 34.654) * 2) | ||||
20 |
Legends | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
|