पायथन में सब कुछ कक्षाओं सहित एक वस्तु है। सभी वर्ग "टाइप" नामक वर्ग के उदाहरण हैं। टाइप ऑब्जेक्ट भी टाइप क्लास का एक उदाहरण है। आप क्लास ऑब्जेक्ट के __bases__ एट्रिब्यूट की जांच करके क्लास के इनहेरिटेंस पदानुक्रम का निरीक्षण कर सकते हैं। टाइप () विधि पैरामीटर के रूप में पारित तर्क (ऑब्जेक्ट) के वर्ग प्रकार को लौटाती है। यदि एकल तर्क प्रकार (ओबीजे) को टाइप विधि में पास किया जाता है, तो यह दिए गए ऑब्जेक्ट का प्रकार देता है। यदि तीन तर्क प्रकार (नाम, आधार, ताना) पारित किया जाता है, तो यह एक नई प्रकार की वस्तु देता है।
प्रकार का उपयोग करना()
आइए सबसे अधिक उपयोग किए जाने वाले डेटा प्रकारों के लिए कक्षाओं को देखें। नीचे दिए गए प्रोग्राम में हम कुछ वेरिएबल्स को इनिशियलाइज़ करते हैं और फिर उनकी क्लास का पता लगाने के लिए टाइप () का उपयोग करते हैं।
उदाहरण
# Some variables a = 5 b = 5.2 c = 'hello' A = [1,4,7] B = {'k1':'Sun','K2':"Mon",'K3':'Tue'} C = ('Sky','Blue','Vast') print(type(a)) print(type(b)) print(type(c)) print(type(A)) print(type(B)) print(type(C))
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
<class 'int'> <class 'float'> <class 'str'> <class 'list'> <class 'dict'> <class 'tuple'>
कक्षाओं का प्रकार
यदि हम ऊपर की कक्षाओं के प्रकार को देखने के लिए गहराई से जाते हैं, तो हम देखेंगे कि वे सभी 'टाइप' नामक वर्ग से संबंधित हैं।
उदाहरण
print(type(int)) print(type(dict)) print(type(list)) print(type(type))
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
<class 'type'> <class 'type'> <class 'type'> <class 'type'>
एक नया ऑब्जेक्ट प्रकार बनाना
हम नई वस्तुओं को बनाने के लिए ऊपर दिए गए समान दृष्टिकोण का भी उपयोग कर सकते हैं। यहां हम नए प्रकार की वस्तु बनाने के लिए तीन पैरामीटर पास करते हैं।
उदाहरण
Object1 = type('A', (object,), dict(a='Hello', b=5)) print(type(Object1)) print(vars(Object1)) class NewCalss: a = 'Good day!' b = 7 Object2 = type('B', (NewCalss,), dict(a='Hello', b=5)) print(type(Object2)) print(vars(Object2))
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
<class 'type'> {'a': 'Hello', 'b': 5, '__module__': '__main__', '__dict__': <attribute '__dict__' of 'A' objects>, '__weakref__': <attribute '__weakref__' of 'A' objects>, '__doc__': None} <class 'type'> {'a': 'Hello', 'b': 5, '__module__': '__main__', '__doc__': None}