Untitled
unknown
python
2 years ago
990 B
1
Indexable
Never
d1 = {} d2 = {} def dec1(func): f=0 def wrapper(*args, **kwargs): nonlocal f global d1,d2 f += 1 d1[func] = f print("dec1 --------------", func.__name__,d1[func]) return func(*args, **kwargs) return wrapper @dec1 def dec2(func): f=0 def wrapper(*args, **kwargs): nonlocal f global d1, d2 f += 1 d2[func] = f print("dec2 --------------", func.__name__, d2[func]) return func(*args, **kwargs) return wrapper @dec1 def func1(): if len(d1) == len(d2): d1[func1.__name__] = d1[func1.__name__]-1 return ' a ' @dec2 def func2(var1): if len(d1) == len(d2): d2[func2.__name__] = d2[func2.__name__]-1 return ' b '+str(var1)+' b ' @dec1 @dec2 def func3(var1=' c '): d1[func3.__name__] = d1[func3.__name__]+1 d2[func3.__name__] = d2[func3.__name__]+1 return ' c '+str(var1)+' c ' print(func1()) print(func2(5)) print(func3())