Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन टाइप ऑब्जेक्ट (type Object): सब कुछ एक ऑब्जेक्ट है

पायथन में सब कुछ ऑब्जेक्ट है

पायथन में कक्षाएं (classes) भी ऑब्जेक्ट हैं, और वे सभी type क्लास के इंस्टेंस हैं। type स्वयं भी type का इंस्टेंस है।

type() फ़ंक्शन

  • type(obj) — ऑब्जेक्ट का प्रकार (क्लास) लौटाता है।
  • type(name, bases, dict) — डायनामिक रूप से नई क्लास बनाता है।

बुनियादी डेटा प्रकारों की क्लास

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))  # 

क्लासों का प्रकार: type

print(type(int))    # 
print(type(dict))   # 
print(type(list))   # 
print(type(type))   #   ← type स्वयं type का इंस्टेंस है

विरासत पदानुक्रम (__bases__)

class Animal: pass
class Dog(Animal): pass

print(Dog.__bases__)        # (,)
print(Animal.__bases__)     # (,)
print(object.__bases__)     # ()

डायनामिक क्लास निर्माण: type(name, bases, dict)

# साधारण क्लास बनाएं
Object1 = type('A', (object,), dict(a='Hello', b=5))
print(type(Object1))        # 
print(vars(Object1))        # {'a': 'Hello', 'b': 5, ...}

# विरासत के साथ क्लास बनाएं
class NewClass:
    a = 'Good day!'
    b = 7

Object2 = type('B', (NewClass,), dict(a='Hello', b=5))
print(vars(Object2))        # {'a': 'Hello', 'b': 5, ...} (NewClass के एट्रिब्यूट्स ओवरराइड)

आउटपुट


{'a': 'Hello', 'b': 5, '__module__': '__main__', '__dict__': ..., '__weakref__': ..., '__doc__': None}

{'a': 'Hello', 'b': 5, '__module__': '__main__', '__doc__': None}

उपयोग: मेटाप्रोग्रामिंग, डायनामिक क्लास जनरेशन, फ्रेमवर्क विकास।

  1. Python में मेटाक्लास के साथ मेटाप्रोग्रामिंग Python में मेटाक्लास के साथ मेटाप्रोग्रामिंग

    मेटाप्रोग्रामिंग शब्द उस कंप्यूटर प्रोग्रामिंग को संदर्भित करता है जहां कंप्यूटर प्रोग्राम स्वयं को हेरफेर करने या उसके बारे में ज्ञान रखने का प्रयास करते हैं। Python मेटाक्लास नामक एक नए प्रकार के क्लास के माध्यम से क्लास के लिए मेटाप्रोग्रामिंग का समर्थन करता है। Python में मेटाक्लास के माध्यम स

  1. - Python OOP बेसिक्स क्या हैं?

    Python में OOP कॉन्सेप्ट्स Python एक ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग भाषा है। हम Python में आसानी से क्लास और ऑब्जेक्ट बना और उपयोग कर सकते हैं। Python प्रोग्रामिंग भाषा के प्रमुख ऑब्जेक्ट-ओरिएंटेड कॉन्सेप्ट्स नीचे दिए गए हैं: ऑब्जेक्ट; क्लास; मेथड; इनहेरिटेंस; पॉलीमॉर्फिज्म; डेटा एब्स्ट्रैक्शन; एनकै

  1. - Python क्लास ऑब्जेक्ट्स को कैसे इनहेरिट करती है?

    Python 2.x में बेस क्लास के रूप में बिल्ट-इन टाइप की उपस्थिति या अनुपस्थिति के आधार पर क्लासेस की दो स्टाइल होती हैं: ओल्ड स्टाइल या क्लासिक स्टाइल क्लासेस: उनका कोई बिल्ट-इन टाइप बेस क्लास के रूप में नहीं होता: >>> class OldFoo: # कोई बेस क्लास नहीं pass >>> OldFoo.__bases