रूप में परिभाषित किया कक्षाओं का एक संग्रह नहीं कर सकते हैं:लेखन त्रुटि: त्रुटि जब metaclass ठिकानों बुला एक नई शैली वर्ग केवल क्लासिक ठिकानों
TypeError: Error when calling the metaclass bases
a new-style class can't have only classic bases
:
class A():
@staticmethod
def call():
print('a')
class C(type):
def __repr__(self):
return 'somename'
class B(A):
__metaclass__ = C
@staticmethod
def call():
print('b')
def boundcall(self):
print('bound')
जब चलाने के लिए, इस त्रुटि देता है
मुझे मेटाक्लास (मुझे लगता है) को मेरे कोड में बी के ज्ञात स्ट्रिंग प्रस्तुति की आवश्यकता है। उस बिंदु के बगल में होने का कारण है लेकिन यह भविष्य के अपडेट के साथ बहुत मदद करेगा।
तो मान लीजिए कि मुझे बी और बी का मेटाक्लास होना चाहिए, ए के उप-वर्ग होंगे क्या कोई मुझे बता सकता है कि यहां क्या गलत हो रहा है और मैं त्रुटि को हटाने के लिए क्या कर रहा हूं, मैं कैसे बदल सकता हूं?