Monday 15 March 2010

python - Using super() in nested classes -


यह कल्पना कीजिए:

  वर्ग ए (ऑब्जेक्ट): वर्ग बी (ऑब्जेक्ट): def __इनट __ (स्वयं): सुपर (बी, स्वयं) .__ init __ ()  

यह एक त्रुटि बनाता है:

 नाम त्रुटि: वैश्विक नाम बी परिभाषित नहीं है 

मैंने एबी की कोशिश की है, लेकिन फिर यह कहता है कि परिभाषित नहीं है।

अपडेट: < / Strong>

मुझे समस्या मिली है।

मेरे पास इस तरह से एक वर्ग है:

  वर्ग ए (ऑब्जेक्ट): वर्ग बी (वस्तु): def __init __ (स्व): सुपर (बी, स्व) .__ init __ () someattribute = B ()  

उस क्षेत्र में, ए अभी तक परिभाषित नहीं है।

मुझे यकीन नहीं है कि एबी क्यों आपके लिए सही तरीके से काम नहीं कर रहा है, जैसा कि यह होना चाहिए .. यहाँ कुछ शेल आउटपुट है वह काम करता है:

  & gt; & gt; & gt; वर्ग ए (वस्तु): ... वर्ग बी (ऑब्जेक्ट): ... def __init __ (स्वयं): ... सुपर (एबी, स्वयं) .__ init__ () ... def getB (स्व): ... वापस एबी () ... & gt; & gt; & gt; ए ()। GetB () & lt; __ मुख्य __. बी ऑब्जेक्ट 0x100496410 & gt;  

No comments:

Post a Comment