का उपयोग मुझे आश्चर्य है कि पाइथन 3 super() के स्वाद का उपयोग कब करें।पायथन 3 सुपर()
Help on class super in module builtins:
class super(object)
| super() -> same as super(__class__, <first argument>)
| super(type) -> unbound super object
| super(type, obj) -> bound super object; requires isinstance(obj, type)
| super(type, type2) -> bound super object; requires issubclass(type2, type)
अब तक मैं केवल तर्क के बिना super()
का उपयोग किया है और यह उम्मीद के रूप में (एक जावा डेवलपर द्वारा) में काम किया।
सवाल:
- क्या "बाध्य" करता है इस संदर्भ में क्या मतलब है?
- बाध्य और अनबाउंड सुपर ऑब्जेक्ट के बीच क्या अंतर है?
super(type, obj)
औरsuper(type, type2)
का उपयोग कब करें?- क्या सुपर क्लास नाम
Mother.__init__(...)
में बेहतर होगा?
सवाल, python3 के बारे में विशेष रूप से है, लेकिन Simionato के ब्लॉग पोस्ट श्रृंखला को Python2 के बारे में हैं, और उल्लेख है कि * लाभ यह है कि आप के नाम को दोहराने के लिए से बचने के है कॉलिंग सिंटैक्स में कक्षा, क्योंकि वह नाम निजी नामों के मैंगलिंग तंत्र में छिपा हुआ है। *। यह Python3 में अब सत्य नहीं है, इसलिए कम से कम एक लाभ दिनांकित है। – gerrit