मेरे पास ऐसा कुछ है
class A: __a = 0 def __init __ (self) : ए .__ ए = ए .__ ए + 1 डीईफ़ ए (स्व): रिटर्न ए .__ एक क्लास बी (ए): डीएफ़ __इनट __ (एसआई): # मैं ए। ए .__ ए = ए .__ ए + 1 # डीईफ़ ए (स्वयं) काम नहीं करता है: रिटर्न ए .__ ए
क्या मैं __ ए
वर्ग चर < कोड> बी ? यह a
के बजाय __ ए
लिखना संभव है, क्या यह एकमात्र तरीका है? (मुझे लगता है कि जवाब शायद कम हो सकता है: हाँ:)
अतः, __ एक स्थिर चर नहीं है, यह एक क्लास चर है और डबल अग्रणी अंडरस्कोर की वजह से, यह एक चर है। यह छद्म निजी बनाने के लिए है, इसे स्वचालित रूप से
_ & lt; classname & gt; __ & lt; variablename & gt;
के बजाय __ & lt; variablename & gt;
के नाम से बदल दिया गया है। यह अभी भी उस वर्ग के के रूप में __ & lt; variablename & gt;
के उदाहरणों तक पहुँचा जा सकता है, उपवर्गों को यह विशेष उपचार नहीं मिलता है।
मैं सुझाऊंगा कि आप डबल अग्रणी अंडरस्कोर का उपयोग नहीं करते हैं, (ए) से चिह्नित करें कि यह निजी है, और (बी) नाम मैंगलिंग से बचने के लिए।
Comments
Post a Comment