Junior — Middle
Оё метавонед мафҳуми декораторҳоро дар забони Python ва истифодаи онҳо шарҳ диҳед?
sobes.tech AI
Ҷавоб аз AI
Декораторҳо дар Python функсияҳое ҳастанд, ки функсияи дигарро қабул мекунанд ва функсияи нав бо рафтори васеъшуда баргардонанд, бе тағир додани коди манбаъии функсия. Онҳо одатан барои илова кардани мантиқи иловагӣ, мисли сабт, санҷиши ҳуқуқи дастрасӣ, кэшгирӣ ва ғайра истифода мешаванд.
Маслиҳат барои истифода:
def decorator(func):
def wrapper(*args, **kwargs):
print("Пеш аз даъвати функсия")
result = func(*args, **kwargs)
print("Пас аз даъвати функсия")
return result
return wrapper
@decorator
def say_hello(name):
print(f"Салом, {name}!")
say_hello("Дунё")
Натиҷа:
Пеш аз даъвати функсия
Салом, Дунё!
Пас аз даъвати функсия
Тавре ки мебинем, декораторҳо имкон медиҳанд, ки рафторҳои функсияҳо ё методҳоро ба роҳе қулай ва хонданӣ тағир дод.