2012-07-31 8 views
8

में isinstance() का नकारात्मक रूप Python's isinstance() का नकारात्मक रूप कैसे उपयोग करेगा?पाइथन

आम तौर पर निषेध की तरह

x != 1 

if x not in y 

if not a 

कुछ काम करेगा मैं सिर्फ isinstance (साथ एक उदाहरण नहीं देखा है), तो मैं वहाँ अगर isinstance साथ निषेध इस्तेमाल किया() एक सही तरीका जानना चाहते हैं।

+7

तो इसका मतलब यह नहीं है कि 'इंस्टेंसेंस (...) 'नहीं है? – jmetz

+2

तो आपको सीखना होगा कि प्रत्येक पायथन निर्माण के लिए 'नहीं' का उपयोग कैसे करें? – JBernardo

+2

ओउ सबक सीखा .. – mrl

उत्तर

18

बस not का उपयोग करें। isinstance सिर्फ bool देता है, जिसे आप not किसी अन्य की तरह कर सकते हैं।

6

कि अजीब लग सकता है, लेकिन:

if not isinstance(...): 
    ... 

isinstance समारोह एक बूलियन मान देता है। इसका मतलब है कि आप इसे अस्वीकार कर सकते हैं (या or या and जैसे किसी अन्य लॉजिकल ऑपरेशंस को बना सकते हैं)।

उदाहरण:

>>> a="str" 
>>> isinstance(a, str) 
True 
>>> not isinstance(a, str) 
False 
3

बस, not, उदा का उपयोग

if not isinstance(someVariable, str): 
    .... 

आप बस "सच मान" (यानी बूलियन) कि isinstance लौटा रहा है negating कर रहे हैं।