पायथन में सब कुछ एक ऑब्जेक्ट है, और लगभग हर चीज के एट्रिब्यूट्स और मेथड्स होते हैं। पायथन में, फंक्शन्स भी ऑब्जेक्ट्स हैं। इसलिए उनके पास अन्य ऑब्जेक्ट्स की तरह एट्रिब्यूट्स होते हैं। सभी फंक्शन्स में एक बिल्ट-इन एट्रिब्यूट __doc__ होता है, जो फंक्शन सोर्स कोड में परिभाषित डॉक स्ट्रिंग लौटाता है। हम उन्हें नए एट्रिब्यूट्स भी असाइन कर सकते हैं, साथ ही उन एट्रिब्यूट्स के मान प्राप्त कर सकते हैं।
एट्रिब्यूट्स को संभालने के लिए, पायथन हमें "getattr" और "setattr" प्रदान करता है, एक फंक्शन जो तीन आर्गुमेंट्स लेता है। "setattr" और असाइनमेंट ऑपरेटर (=) के बाईं ओर डॉट-नोटेशन का उपयोग करने में कोई अंतर नहीं है:
दिए गए कोड को एट्रिब्यूट्स असाइन और प्राप्त करने के लिए निम्नानुसार लिखा जा सकता है:
उदाहरण
def foo():
pass
setattr(foo, 'age', 23)
setattr(foo, 'name', 'John Doe')
print(getattr(foo, 'age'))
foo.gender = 'male'
print(foo.gender)
print(foo.name)
print(foo.age)
आउटपुट
C:/Users/TutorialsPoint1/~.py 23 male John Doe 23