त्रुटि मूल रूप से कहा गया है कि कक्षाएं, सिर्फ दुकान डेटा नहीं होती हैं, जैसा कि आप मूल रूप से एक शब्दकोश के रूप में वर्ग के इलाज कर रहे हैं। कक्षाओं में उनके पास मौजूद डेटा पर काम करने के लिए कम से कम कुछ विधियां होनी चाहिए।
अपने वर्ग इस तरह दिखाई देता है:
class MyClass(object):
def __init__(self, foo, bar):
self.foo = foo
self.bar = bar
एक शब्दकोश या इसके बजाय एक namedtuple
उपयोग पर विचार करें। यद्यपि यदि कक्षा सबसे अच्छी पसंद की तरह लगती है, तो इसका इस्तेमाल करें। पिलिंट हमेशा नहीं जानता कि सबसे अच्छा क्या है।
ध्यान दें कि namedtuple
अपरिवर्तनीय है और तत्काल पर आवंटित मानों को बाद में संशोधित नहीं किया जा सकता है।
आपकी कक्षा कैसी दिखती है? क्या कक्षा स्टोर डेटा के अलावा कुछ भी करती है? – Blender
सभी वर्ग स्टोर डेटा है। – monsur
ठीक है, आपकी समस्या है। कक्षाएं डेटा स्टोर करने के लिए नहीं हैं। शब्दकोश और संरचनाओं जैसे डाटा स्ट्रक्चर के लिए यही है। – Blender