ਇੱਕ ਡੈਕੋਰੇਟਰ ਇੱਕ ਫ਼ੰਕਸ਼ਨ ਹੈ ਜੋ ਦੂਜੇ ਫ਼ੰਕਸ਼ਨ ਨੂੰ ਮੋੜਦਾ ਹੈ ਤਾਂ ਕਿ ਵਿਹਾਰ ਜੋੜਿਆ ਜਾ ਸਕੇ, ਬਿਨਾ ਮੂਲ ਦੇ ਕੋਡ ਨੂੰ ਬਦਲੇ। ਇਸ ਨੂੰ ਇੱਕ ਫ਼ੰਕਸ਼ਨ ਦੇ ਉੱਪਰ @decorator ਸਿੰਟੈਕਸ ਨਾਲ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ — ਲਾਗਿੰਗ, ਸਮਾਂ, ਕੈਸ਼ਿੰਗ, ਜਾਂ ਪਹੁੰਚ ਨਿਯੰਤਰਣ ਜਿਵੇਂ ਕ੍ਰਾਸ-ਕਟਿੰਗ ਦੁਆਵਾਂ ਨੂੰ ਜੋੜਨ ਦਾ ਸਾਫ ਤਰੀਕਾ।
ਡੈਕੋਰੇਟਰ ਕਿਵੇਂ ਕੰਮ ਕਰਦੇ ਹਨ
():
():
()
result = func(*args, **kwargs)
()
result
wrapper
():
()
greet()
