property आम तौर पर एक डेकोरेटर के रूप में प्रयोग किया जाता है।
functools ऐसे total_ordering
, update_wrapped
, lru_cache
, और wraps
के रूप में कई कार्य सामान्य रूप से एक डेकोरेटर के रूप में इस्तेमाल किया गया है।
contextlib contextmanager
डेकोरेटर है।
ध्यान रखें, यदि आप एक डेकोरेटर के रूप में किसी भी समारोह का उपयोग कर सकते हैं:
@decorator
def function(): pass
बस के रूप में
def function(): pass
function = decorator(function)
क्रम उपयोगी हो करने के लिए एक ही है, वे आम तौर पर एक प्रतिदेय उम्मीद करने की आवश्यकता है एक तर्क के रूप में और उन्हें एक कॉल करने योग्य वस्तु वापस करने की जरूरत है। (property
कि के दूसरे भाग के लिए एक अपवाद है।)
कक्षाएं भी बिल्कुल उसी तरह से सजाया जा सकता है।
वहाँ भी एक list of decorators on the Python Wiki है। उनमें से कुछ मानक पुस्तकालय में हैं, कुछ नहीं हैं।
मैंने उदाहरण के साथ, मेरे उत्तर में इसका उल्लेख किया। – agf