개발자 블로그

[윤성우의 열혈 파이썬 중급편] - 13. isinstance 함수와 object 클래스 본문

파이썬/윤성우의 열혈 파이썬 중급편

[윤성우의 열혈 파이썬 중급편] - 13. isinstance 함수와 object 클래스

hayongwoon 2022. 5. 3. 18:44

isinstance 함수

isinstance(object, classinfo)            객체의 클래스 유형을 확인하는 함수!

 

첫 번째 인자는 객체, 두 번째 인자는 클래스이다!

"이 객체가 저 클래스의 객체인가??"할 때 쓰는 함수!

 

* 추가로 해당 객체가 직접 또는 간접적으로 상속 받은 클래스인 경우에도 True를 반환!!

 

Object 클래스

객체 클래스?? 말이 뭔가 이상하다... 이 말은 즉, "파이썬의 모든 클래스는 object 클래스를 직간접적으로 상속한다."라는 사실을 알아야 한다.

 

issubclass(class1, class2) 함수를 통해서도 살펴보자! (->class1은 class2를 상속 받았는가?)

이렇듯 파이썬의 모든 클래스는 object 클래스를 상속하고 있다!

>>> dir(object)
['__class__', '__delattr__', '__dir__',
'__doc__', '__eq__', '__format__', '__ge__',
'__getattribute__', '__gt__', '__hash__', '__init__',
'__init_subclass__', '__le__', '__lt__', '__ne__', '__new__',
'__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__',
'__str__', '__subclasshook__']

object 클래스의 내부! 종종 사용할 일이 있다는데, 가볍게 살펴보자!