>  기사  >  백엔드 개발  >  Python 내장 isinstance 함수에 대한 자세한 소개

Python 내장 isinstance 함수에 대한 자세한 소개

高洛峰
高洛峰원래의
2017-03-21 09:32:202030검색

영어 문서:

isinstance(object, classinfo)

Return true if object 인수는 classinfo 인수 또는 해당 하위 클래스(직접, 간접 또는 가상)의 인스턴스입니다. object가 지정된 유형의 객체가 아닌 경우 classinfo가 유형의 튜플인 경우 함수는 항상 false를 반환합니다. 객체(또는 재귀적으로 다른 튜플)는 객체가 유형 중 하나의 인스턴스인 경우 true를 반환합니다. classinfo가 유형이나 유형 및 그러한 튜플의 튜플이 아닌 경우 TypeError 예외가 발생합니다.

설명:

 1. 함수 함수는 개체가 유형 개체의 인스턴스인지 확인하는 데 사용됩니다. 개체 매개 변수는 확인해야 하는 개체를 나타냅니다. , calssinfo 매개변수는 유형 객체를 나타냅니다.

 2. object 매개변수가 classinfo 유형 개체의 인스턴스(또는 classinfo 클래스 개체의 직접, 간접 또는 가상 하위 클래스)인 경우 True를 반환합니다.

>>> isinstance(1,int)
True
>>> isinstance(1,str)
False

# 定义3各类:C继承B,B继承A
>>> class A:
    pass

>>> class B(A):
    pass

>>> class C(B):
    pass

>>> a = A()
>>> b = B()
>>> c = C()
>>> isinstance(a,A) #直接实例
True
>>> isinstance(a,B)
False
>>> isinstance(b,A) #子类实例 
True
>>> isinstance(c,A) #孙子类实例
True

 3. 객체 매개변수가 객체 유형으로 전달되면 항상 False가 반환됩니다.

>>> isinstance(str,str)
False 
>>> isinstance(bool,int)
False

 4. classinfo 유형 객체가 여러 유형 객체로 구성된 튜플이고, 객체 객체가 튜플에 있는 임의 유형 객체의 인스턴스이면 True를 반환하고, 그렇지 않으면 True를 반환합니다. 거짓.

>>> isinstance(a,(B,C))
False
>>> isinstance(a,(A,B,C))
True

 5. classinfo 유형 객체가 유형 객체 또는 여러 유형 객체로 구성된 튜플이 아닌 경우 오류(TypeError)가 보고됩니다.

아아아아

위 내용은 Python 내장 isinstance 함수에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.