पायथन में कोड लिखते समय आप कई अलग-अलग फ़ंक्शन लिख सकते हैं। इन फ़ंक्शंस में आप विशेषताएँ और संपत्ति बना सकते हैं।
विशेषताओं की परिभाषा वे चर हैं जो किसी वस्तु से संबंधित हैं। गुणों की परिभाषा वे विशेषताएँ हैं जिन्हें विधियों द्वारा नियंत्रित किया जाता है।
विशेषताओं और गुणों का एक उदाहरण नीचे है।
गुण:
class Traveler: some attribute= "All members of this class will have this attribute." def __init__(self, name): self.name = name
नाम यात्री वर्ग का एक गुण है। चूँकि यह फ़ंक्शन के अंदर है इसलिए यह इंस्टेंस विशेषता है।
कुछ विशेषताएँ सभी यात्रियों के लिए समान होंगी जबकि नाम प्रत्येक यात्री के लिए बदल सकता है।
यात्री वर्ग में उम्र, ऊंचाई आदि जैसी कई विशेषताएं हो सकती हैं... ये विशेषताएं वर्ग के बारे में अधिक जानकारी प्रदान करती हैं। रिएक्ट में प्रॉप्स के समान।
गुण:
उपरोक्त कोड को जोड़कर आप कुछ मापदंडों का उपयोग करके नाम प्राप्त और सेट कर सकते हैं। तब आपके नाम की संपत्ति होगी.
def get_name(self): return self._name def set_name(self, name): if type(name)==str and len(name) > 0: self._name = name else: print("Name needs to be a string and longer than 0 characters.")
नाम = संपत्ति(get_name,set_name)
get_name को नाम मिलता है और फिर सेट नाम कोड में पैरामीटर के साथ नाम सेट करता है। जब नाम इनपुट होता है और उन मापदंडों का पालन नहीं होता है तो कंसोल आवश्यकताओं के बारे में एक त्रुटि संदेश प्रिंट करता है। फिर जब प्रॉपर्टी को कॉल किया जाता है तो प्रॉपर्टी get_name और set_name पर कॉल करती है। संपत्ति को नाम से पुकारने के तरीके के लिए नीचे देखें।
some_traveler = यात्री(नाम='स्पेंसर')
स्पेंसर के बराबर नाम को ट्रैवलर वर्ग में पारित किया जाता है और संपत्ति का नाम कहा जाता है। इसे नाम मिलता है और फिर इसे सेट किया जाता है। चूँकि यह एक स्ट्रिंग है और 0 वर्णों से अधिक है, इसलिए यह बिना किसी त्रुटि संदेश के इसे सेट करने में सक्षम है। अब जब some_traveler.name कहा जाएगा तो वह स्पेंसर होगा।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3