प्रकार () फ़ंक्शन या तो ऑब्जेक्ट का प्रकार लौटाता है या पारित किए गए तर्कों के आधार पर एक नई प्रकार की वस्तु लौटाता है।
type()
समारोह में दो अलग अलग रूप हैं:
प्रकार (ऑब्जेक्ट) प्रकार (नाम, आधार, तानाशाही)
टाइप () सिंगल ऑब्जेक्ट पैरामीटर के साथ
यदि किसी एकल ऑब्जेक्ट को पास किया जाता है type()
, तो फ़ंक्शन उसका प्रकार लौटाता है।
उदाहरण 1: एक वस्तु का प्रकार प्राप्त करें
numbers_list = (1, 2) print(type(numbers_list)) numbers_dict = (1: 'one', 2: 'two') print(type(numbers_dict)) class Foo: a = 0 foo = Foo() print(type(foo))
आउटपुट
यदि आपको किसी ऑब्जेक्ट के प्रकार की जांच करने की आवश्यकता है, तो इसके बजाय पायथन आइंस्टीन () फ़ंक्शन का उपयोग करना बेहतर है। यह इसलिए है क्योंकि isinstance()
फ़ंक्शन यह भी जांचता है कि क्या दी गई वस्तु उपवर्ग का एक उदाहरण है।
प्रकार () नाम, ठिकानों और तानाशाह पैरामीटर्स के साथ
यदि तीन पैरामीटर पास किए जाते हैं type()
, तो यह एक नए प्रकार की वस्तु देता है।
तीन पैरामीटर हैं:
पैरामीटर | विवरण |
---|---|
नाम | एक वर्ग का नाम; __name__ विशेषता बन जाता है |
आधार | एक ट्यूपल जो बेस क्लास को आइटम करता है; __bases__ विशेषता बन जाता है |
तानाशाही | एक शब्दकोष जो वर्ग निकाय के लिए परिभाषाओं वाला नाम स्थान है; __dict__ विशेषता बन जाता है |
उदाहरण 2: एक प्रकार की वस्तु बनाएं
o1 = type('X', (object,), dict(a='Foo', b=12)) print(type(o1)) print(vars(o1)) class test: a = 'Foo' b = 12 o2 = type('Y', (test,), dict(a='Foo', b=12)) print(type(o2)) print(vars(o2))
आउटपुट
('ए': 'फू', 'बी': 12, '__module__': '__main__', '__dict__':, '__weakref__':, '__deak__': कोई नहीं) ('ए': 'फू', 'बी' ': 12,' __module__ ':' __main__ ',' __doc__ ': कोई नहीं)
कार्यक्रम में, हमने पायथन संस्करण () फ़ंक्शन का उपयोग किया है जो __dict__
विशेषता लौटाता है । __dict__
का उपयोग ऑब्जेक्ट की लेखन योग्य विशेषताएँ संग्रहीत करने के लिए किया जाता है।
यदि आवश्यक हो तो आप आसानी से इन विशेषताओं को बदल सकते हैं। उदाहरण के लिए, यदि आपको उपयोग __name__
करने के लिए o1 की विशेषता बदलने की आवश्यकता है, तो 'Z'
:
o1 .__ नाम = 'Z'