द isinstance()
यदि कोई चर किसी निर्दिष्ट डेटा प्रकार से मेल खाता है, तो पायथन में फ़ंक्शन सही या गलत लौटाता है। . के लिए वाक्य रचना isinstance()
पायथन में है isinstance(variable_to_check, data_type)
.
किसी विशेष मान के डेटा प्रकार की जाँच करना प्रोग्रामिंग में एक सामान्य ऑपरेशन है। उदाहरण के लिए, हो सकता है कि आप यह जांचना चाहें कि आपने किसी वैरिएबल में जो मान संग्रहीत किया है वह एक स्ट्रिंग है या एक संख्या, क्योंकि इनमें से प्रत्येक डेटा प्रकार कोड में अलग तरह से काम करता है।
वहीं isinstance()
समारोह उपयोगी हो सकता है। isinstance()
एक अंतर्निहित पायथन विधि है जो आपको किसी विशेष मान के डेटा प्रकार को सत्यापित करने की अनुमति देती है। उदाहरण के लिए, आप isinstance()
. का उपयोग कर सकते हैं यह जाँचने के लिए कि क्या कोई मान एक स्ट्रिंग या सूची है।
यह ट्यूटोरियल आपको isinstance()
. का उपयोग करने के तरीके के बारे में बताएगा पायथन में विधि और इसे बेहतर ढंग से समझने में आपकी सहायता के लिए कुछ उदाहरण प्रदान करेगा।
पायथन इस इंस्टेंस ओवरव्यू
जब आप Python में कोड करते हैं, तो आप विभिन्न प्रकार के डेटा का उपयोग करते हैं। इन डेटा प्रकारों में स्ट्रिंग्स, संख्याएं, सूचियां, टुपल्स और शब्दकोश शामिल हैं। प्रत्येक डेटा प्रकार के नियमों का अपना सेट होता है जो नियंत्रित करता है कि उस डेटा को कैसे संग्रहीत और हेरफेर किया जाता है। उदाहरण के लिए, पायथन का उपयोग करते समय, आप संख्याओं पर गणितीय गणना कर सकते हैं लेकिन स्ट्रिंग्स पर नहीं।
नतीजतन, यह महत्वपूर्ण है कि आप अपने प्रोग्राम में सही डेटा प्रकारों के साथ काम कर रहे हैं। यह सत्यापित करने के लिए कि आप जिस डेटा के साथ काम कर रहे हैं, वह उपयुक्त डेटा प्रकार के रूप में संग्रहीत है, आप पायथन में isinstance का उपयोग कर सकते हैं। पायथन का उपयोग करते समय, आवश्यकतानुसार डेटा प्रकारों की जाँच करें।
isinstance()
पायथन में बनाया गया एक फ़ंक्शन है जो यह जांचता है कि कोई मान किसी विशेष डेटा प्रकार के रूप में संग्रहीत है या नहीं। type()
. के विपरीत विधि, जिस पर बाद में इस लेख में चर्चा की गई है, isinstance()
विधि केवल True
लौटाती है या False
, इस पर निर्भर करता है कि आप जिस मान की जांच कर रहे हैं वह आपके द्वारा निर्दिष्ट डेटा प्रकार या प्रकारों के रूप में संग्रहीत है या नहीं।
isinstance()
. के लिए सिंटैक्स इस प्रकार है:
81% प्रतिभागियों ने कहा कि बूटकैंप में भाग लेने के बाद उन्हें अपनी तकनीकी नौकरी की संभावनाओं के बारे में अधिक आत्मविश्वास महसूस हुआ। आज ही एक बूटकैंप से मिलान करें।
बूटकैंप शुरू करने से लेकर अपनी पहली नौकरी खोजने तक, औसत बूटकैंप ग्रेड ने करियर संक्रमण में छह महीने से भी कम समय बिताया।
isinstance(ऑब्जेक्ट, data_types)
isinstance()
विधि में दो पैरामीटर होते हैं, जिनमें से दोनों की आवश्यकता होती है:
- वस्तु :वह वस्तु जिसका डेटा प्रकार आप जांचना चाहते हैं।
- data_types :वस्तु के संभावित डेटा प्रकारों में से कम से कम एक।
isinstance()
विधि तब आपके द्वारा निर्दिष्ट डेटा प्रकार (प्रकारों) के विरुद्ध वस्तु की तुलना करती है। यदि आप ऑब्जेक्ट की तुलना दो या अधिक डेटा प्रकारों से करना चाहते हैं, तो आपको data_types पैरामीटर के रूप में एक टपल निर्दिष्ट करना होगा।
प्रत्युत्तर में, आपका कोड True
लौटाता है या False
. कोड True
लौटाता है यदि ऑब्जेक्ट आपके द्वारा निर्दिष्ट डेटा प्रकार (या डेटा प्रकारों में से एक) से संबंधित है, और False
यदि नहीं।
अनिवार्य रूप से, जब आप पायथन में isinstance का उपयोग करते हैं, तो आप अपना कोड एक खाली-खाली विवरण और कम से कम एक उत्तर विकल्प के साथ प्रस्तुत कर रहे हैं। आपका कथन है:This object is a (data type)
. डेटा प्रकार पैरामीटर निर्दिष्ट करना उस कथन को पूरा करता है। दो उदाहरण हैं:
12
एक संख्या है।books
एक संख्या है।
प्रत्युत्तर में, आपका कोड True
लौटाता है या False
।
पायथन उदाहरण उदाहरण
आइए दो उदाहरणों के माध्यम से देखें कि आप isinstance()
. का उपयोग कैसे कर सकते हैं आपके कोड में विधि। मान लें कि हमारे पास एक मान है, और हम यह सत्यापित करना चाहते हैं कि मान एक स्ट्रिंग है। हम उपयोग कर सकते हैं isinstance()
यह करने के लिए। यहां वह कोड है जिसका हम उपयोग कर सकते हैं:
प्रिंट(isinstance("String", str))
हमारा कोड एक प्रकार की जाँच करता है और फिर हमारा फ़ंक्शन वापस आता है:True
.
क्योंकि String
वास्तव में एक स्ट्रिंग है (str
इस प्रकार आप डेटा प्रकार string
. को संदर्भित करते हैं पायथन में) हमारा प्रोग्राम True
लौटाता है ।
अब हम एक और विस्तृत उदाहरण तलाशेंगे।
मान लीजिए कि हम दूसरी कक्षा के लिए एक गुणन खेल बना रहे हैं। हमारा गेम एक उपयोगकर्ता को गणित की समस्या के साथ प्रस्तुत करता है, और फिर यह देखने के लिए उपयोगकर्ता के उत्तर की जांच करता है कि वे सही हैं या नहीं। हमारे कार्यक्रम के काम करने के लिए, हमें यह सुनिश्चित करना होगा कि उपयोगकर्ता ने हमारे गेम में एक नंबर दर्ज किया है।
यह जांचने के लिए कि क्या खिलाड़ी से हमने जो उत्तर एकत्र किया है वह एक संख्या है, हम इस कोड का उपयोग कर सकते हैं:
answer =5 * 8user_answer =input("5 x 8 क्या है?")प्रिंट(isinstance(user_answer, (int, float)))
हमारा कोड लौटाता है:False
।
आइए हमारे कार्यक्रम को तोड़ दें। पहली पंक्ति में, हम उस गणित समस्या के उत्तर की गणना करते हैं जो हमने खिलाड़ी को प्रस्तुत किया था। इस मामले में, वह गणित की समस्या थी:What is 5 x 8?
, इसलिए हम answer = 5 * 8
. इनपुट करते हैं हमारे कोड की पहली पंक्ति के लिए।
फिर, हम input()
. का उपयोग करते हैं उपयोगकर्ता से उत्तर प्राप्त करने की विधि।
हमारे कोड की अंतिम पंक्ति में, हम isinstance()
. का उपयोग करते हैं यह जाँचने के लिए कि क्या हमारे उपयोगकर्ता का उत्तर (user_answer
. में संगृहीत है) ) या तो एक पूर्णांक या एक फ्लोट है, जो दो डेटा प्रकार हैं जिनका उपयोग पायथन में संख्याओं का प्रतिनिधित्व करने के लिए किया जाता है। हम एक टपल बनाकर ऐसा करते हैं जो डेटा प्रकारों को संग्रहीत करता है जिसके विरुद्ध हम अपना मूल्य जांचना चाहते हैं। हमारे कोड में, यह टपल है:(int, float)
।
हमारा कोड False
लौटाता है , जो हमें बताता है कि उपयोगकर्ता का उत्तर न तो एक पूर्णांक (int) है और न ही एक फ्लोट है।
अब जब हम जानते हैं कि हमारी वस्तु इंट या फ्लोट का उदाहरण नहीं है, तो हम समस्या का निदान करना शुरू कर सकते हैं। हमारा कोड False
लौटाता है क्योंकि input()
हमें डिफ़ॉल्ट रूप से एक स्ट्रिंग देता है, भले ही कोई उपयोगकर्ता कोई संख्या दर्ज करता हो। इसलिए, हमारे कोड के काम करने के लिए, हमें अपने input()
. के परिणाम को बदलने की जरूरत है एक पूर्णांक में विधि। हम निम्नलिखित कोड का उपयोग करके ऐसा कर सकते हैं:
answer =5 * 8user_answer =int(input("5 x 8 क्या है?"))प्रिंट(isinstance(user_answer, (int, float)))
अब जब हम अपना कोड चलाते हैं, तो हमें मिलता है:True
.
इस उदाहरण और पिछले उदाहरण के बीच एकमात्र अंतर यह है कि, इस कोड में, user_answer
पर लाइन, हम अपने input()
. के परिणाम को रूपांतरित करते हैं int()
. का उपयोग करके पूर्णांक के लिए विधि . इसलिए, प्रोग्राम इनपुट को एक स्ट्रिंग के बजाय एक पूर्णांक के रूप में पंजीकृत करता है। इसलिए, जब हम isinstance()
. का उपयोग करके इस मान के डेटा प्रकार की जांच करते हैं विधि, हमारा प्रोग्राम सत्यापित करता है कि मान या तो एक पूर्णांक या एक फ्लोट है।
उपरोक्त उदाहरण में, हमने जाँच की कि क्या किसी वस्तु में एक विशेष अंतर्निहित डेटा प्रकार है। isinstance()
किसी विशिष्ट वर्ग के साथ किसी वस्तु की तुलना करने के लिए विधि का भी उपयोग किया जा सकता है।
टाइप बनाम isinstance
यदि आपको कभी भी पायथन में किसी मान के प्रकार की जांच करने की आवश्यकता होती है, तो हो सकता है कि आप type()
पर आ गए हों। तरीका। type()
एक अंतर्निहित पायथन फ़ंक्शन है जिसका उपयोग किसी चर या मान के प्रकार का पता लगाने के लिए किया जा सकता है। यहाँ पायथन प्रकार विधि के लिए वाक्य रचना है:
उदाहरण के लिए, मान लें कि आपके पास एक नंबर है और आप यह देखना चाहते हैं कि इसे किस डेटा प्रकार के रूप में कोडित किया गया है। आप निम्न कोड का उपयोग करके ऐसा कर सकते हैं:
नंबर =8प्रिंट (टाइप(नंबर))
हमारा कोड लौटाता है:
जैसा कि आप देख सकते हैं, हमारा प्रोग्राम हमारे डेटा का प्रकार लौटाता है। यह हमें बताता है कि यह डेटा एक पूर्णांक के रूप में संग्रहीत है।
type()
. में एक बड़ा अंतर है और isinstance()
ऐसे कार्य जो कुछ परिस्थितियों में एक को दूसरे की तुलना में उपयोग करने के लिए अधिक उपयुक्त बनाते हैं। यदि आप किसी मान का डेटा प्रकार देखना चाहते हैं, तो type()
अधिक उपयुक्त हो सकता है। लेकिन, यदि आप यह सत्यापित करना चाहते हैं कि कोई मान निश्चित . के रूप में संग्रहीत है डेटा प्रकार या प्रकार—जैसे स्ट्रिंग या फ्लोट—आपको isinstance()
. का उपयोग करना चाहिए ।
निष्कर्ष
पायथन में, आप isinstance()
. का उपयोग कर सकते हैं यह सत्यापित करने के लिए कार्य करता है कि कोई मान एक विशेष डेटा प्रकार रखता है या नहीं। उदाहरण के लिए, यदि आप यह सत्यापित करना चाहते हैं कि मानों की सूची सूची के रूप में संग्रहीत है, या यदि कोई संख्या फ़्लोट के रूप में संग्रहीत है, तो आप isinstance()
का उपयोग कर सकते हैं ।
इस पायथन ट्यूटोरियल ने isinstance()
. का उपयोग करने का तरीका दिखाया यह सत्यापित करने के लिए कि कोई मान एक निश्चित डेटा प्रकार रखता है या नहीं। अब आपके पास उपयोग करने के लिए आवश्यक जानकारी है isinstance()
एक पायथन मास्टर की तरह।