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