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("Աշխարհ")
Ելք՝
Նախքան ֆունկցիայի կանչելը
Բարև, Աշխարհ!
Հետո ֆունկցիայի կանչելը
Այսպիսով, դեկորատորները թույլ են տալիս հարմար և ընթեռնելի ձևով փոփոխել ֆունկցիաների կամ մեթոդների վարքը։