1
def print_info(func):
def wrapper(*args, **kwargs):
print('start')
result = func(*args, **kwargs)
print('end')
return result
return wrapper
def sum(a, b):
return a + b
f = print_info(sum)
r = f(10, 20)
print(r)
Résultat d'exécution de 1
start
end
30
La fonction print_info est un décorateur Décorer la fonction somme.
Il est difficile de comprendre si c'est écrit comme 1. Il est plus facile à comprendre si vous écrivez comme suit. .. ..
En outre, le décorateur peut être réutilisé, donc basé sur cela. .. ..
2
def print_info(func):
def wrapper(*args, **kwargs):
print('start')
result = func(*args, **kwargs)
print('end')
return result
return wrapper
@print_info
def sum(a, b):
return a + b
@print_info
def sub(a, b):
return a - b
print(sum(10, 20))
print(sub(90, 20))
Résultat d'exécution de 2
start
end
30
start
end
70
Recommended Posts