Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन वर्ग में सार्वजनिक और निजी चर क्या हैं?

सार्वजनिक चर

पायथन हमें किसी भी वेरिएबल तक पहुंचने या किसी भी सदस्य विधि को पायथन प्रोग्राम में कॉल करने से प्रतिबंधित नहीं करता है।

पायथन में सभी अजगर चर और विधियां डिफ़ॉल्ट रूप से सार्वजनिक होती हैं। इसलिए जब हम किसी वेरिएबल या मेथड को पब्लिक करना चाहते हैं, तो हम कुछ नहीं करते। आइए नीचे दिए गए उदाहरण को देखें -

उदाहरण

class Mug:
    def __init__(self):
        self.color = None
        self.content = None

    def fill(self, beverage):
        self.content = beverage

    def empty(self):
        self.content = None

brownMug = Mug()
brownMug.color = "brown"
print brownMug.empty()
print brownMug.fill('tea')
print brownMug.color
print brownMug.content

कोड में सभी चर और विधियाँ डिफ़ॉल्ट रूप से सार्वजनिक होती हैं।

जब हम अपने डेटा सदस्य को निजी घोषित करते हैं, तो हमारा मतलब है कि कोई भी इसे कक्षा के बाहर से एक्सेस करने में सक्षम नहीं होना चाहिए। यहां पायथन नेम मैंगलिंग नामक तकनीक का समर्थन करता है। यह सुविधा प्रत्येक सदस्य के नाम को कम से कम दो अंडरस्कोर से पहले और कम से कम एक अंडरस्कोर के साथ _ में बदल देती है। तो हमारे सदस्य को निजी बनाने के लिए, आइए नीचे दिए गए उदाहरण पर एक नजर डालते हैं -

उदाहरण

class Cup:
    def __init__(self, color):
         self.__content = None  # private variable
    def fill(self, beverage):
        self.__content = beverage
    def empty(self):
        self.__content = None

हमारा कप अब केवल भरण () और खाली () विधियों का उपयोग करके भरा और डाला जा सकता है। ध्यान दें, यदि आप __content को बाहर से एक्सेस करने का प्रयास करते हैं, तो आपको एक त्रुटि मिलेगी। लेकिन आप अभी भी कुछ इस तरह ठोकर खा सकते हैं -

redCup = Cup("red")
redCup._Cup__content = "tea"

  1. पायथन में विरासत

    इस लेख में, हम पायथन 3.x में इनहेरिटेंस और एक्सटेंडिंग क्लासेस सीखेंगे। या पहले। वंशानुक्रम वास्तविक दुनिया के संबंधों का अच्छी तरह से प्रतिनिधित्व करता है, पुन:प्रयोज्य प्रदान करता है और पारगमन का समर्थन करता है। यह तेजी से विकास समय, आसान रखरखाव और विस्तार में आसान प्रदान करता है। वंशानुक्रम को

  1. अजगर 2.x और अजगर 3.x संस्करणों के बीच क्या अंतर हैं?

    पायथन 2.x विरासत है, पायथन 3.x भाषा का वर्तमान और भविष्य है। सुविधाओं की एक गैर-विस्तृत सूची जो केवल 3.x रिलीज़ में उपलब्ध है और Python 2.x में उपलब्ध नहीं है - स्ट्रिंग्स डिफ़ॉल्ट रूप से यूनिकोड हैं स्वच्छ यूनिकोड/बाइट पृथक्करण अपवाद श्रृखंला फ़ंक्शन एनोटेशन केवल-कीवर्ड तर्कों के लिए

  1. पायथन 2.7.x और पायथन 3.x के बीच महत्वपूर्ण अंतर क्या हैं?

    पायथन 3.0 को दिसंबर 2008 में जारी किया गया था। इसे पुराने संस्करण में कुछ खामियों को सुधारने के लिए डिज़ाइन किया गया था। पायथन 3 का मार्गदर्शक सिद्धांत था:चीजों को करने के पुराने तरीकों को हटाकर फीचर दोहराव को कम करें। पायथन 3.0 पश्चगामी संगतता प्रदान नहीं करता है। इसका मतलब है कि संस्करण 2.x सिंटैक