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)
Ausführungsergebnis von 1
start
end
30
Die Funktion print_info ist ein Dekorateur Dekorieren der Summenfunktion.
Es ist schwer zu verstehen, wenn es als 1 geschrieben ist. Es ist einfacher zu verstehen, wenn Sie wie folgt schreiben. .. ..
Auch der Dekorateur kann so wiederverwendet werden darauf bezogen. .. ..
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))
Ausführungsergebnis von 2
start
end
30
start
end
70
Recommended Posts