안녕하세요. 성조입니다.
이번 포스팅은 파이썬 내장 함수인 isinstance에 대해서 정리하는 포스팅을 진행해 보려 합니다.
최대한 지식 전달을 위해서 올바른 정보를 작성하려 노력하겠지만 혹시나 잘못된 정보가 있다면 언제든지 댓글로 피드백 주시면 감사드리겠습니다!
isinstance()란?
ininstance()는 파이썬의 내장 함수 중 하나로, 객체가 지정한 클래스(class) 또는 타입(type)의 인스턴스(instance)를 판별하는 함수이다.
즉, 내용의 자료형을 판별하는 함수로 보면 된다.
isinstance() 함수 조금 더 친해지기.
isinstance() 함수는 다음의 문법을 갖는다.
isinstance(object, classinfo)
object : 검사 대상 객체를 의미하는데 검사하려는 값이라고 보면 된다.
classinfo : 클래스(class)나 자료형(type)을 의미한다. 검사 대상 객체가 어떤
반환 값 : isinstance() 함수는 True나 False 값을 반환한다.
isinstance() 함수 예제
다음은 isinstance() 함수를 활용한 예시와 간단한 설명이다.
정수형인 경우
x = 2
if isinstance(x, int):
print("x는 정수형입니다.")
else:
print("x는 정수형이 아닙니다.")
x = 2의 값은 정수형이 맞으므로 if 문의 값이 나온다.
x = 2가 x = "2"였다면 정수형이 아닌 문자열이므로 if를 충족시키지 못해서 else 조건으로 값이 나온다.
정수형 이거나 문자열인 경우
x = 3
if isinstance(x, (int, str)):
print("x는 정수형이거나 문자열입니다.")
else:
print("x는 정수형도 문자열도 아닙니다.")
x = 3은 정수형이거나 문자열이라는 조건이 참이므로 if 문에 있는 내용이 나온다.
x = 2.5의 값이 들어가면 실수형이므로 if의 조건문이 충족되지 않으므로 else 문의 내용이 나온다.
실수형인 경우
x = 3.5
if isinstance(x, float):
print("x는 실수형 입니다.")
else:
print("x는 실수형이 아닙니다.")
위에 언급된 했던 설명들과 같이 3.5는 실수로 float으로 검사했을 때 True를 만족하므로 정상적으로 실수형이라 답변이 나온다.
문자열인 경우
x = "Hello Python"
if isinstance(x, str):
print("x는 문자열 입니다.")
else:
print("x는 문자열이 아닙니다.")
당연히 문자열을 판단할 수 있다.
x = 2의 경우 정수형 즉, 숫자로 인식해서 False 값을 반환하지만 x = "2"의 값인 경우는 True 조건을 반환한다.
불린형(boolean)인 경우
x = True
if isinstance(x, bool):
print("x는 boolean 타입입니다.")
else:
print("x는 boolean 타입이 아닙니다.")
x변수 값이 False 값을 가지고 있어도 boolean 타입을 가지고 있기 때문에 True를 반환한다.
오타나 잘못된 지식 전달 부분이 있다면 언제든지 댓글 남겨주시면 감사드립니다.
궁금한 부분이 존재해도 댓글 달아주시면 최대한 답변할 수 있도록 노력하겠습니다.
감사합니다. 다음 포스팅 때 뵙겠습니다!
- 참조 -
https://www.w3resource.com/python/built-in-function/isinstance.php
'Python 🐍 > Python' 카테고리의 다른 글
[Python] 파이썬 문자열 정리 (0) | 2023.03.11 |
---|---|
[Python] 파이썬에 switch-case 문이 없는 이유. 그리고 with Python 3.10 match-case (0) | 2023.03.04 |
[Python] 동적 타이핑(Dynamic typing)언어 (0) | 2022.10.04 |
[Python] 주피터 노트북(Jupyter Notebook), 아나콘다(Anaconda) 설치 및 간단한 장단점 (1) | 2022.10.04 |
[Python] 파이썬 기본 자료형 정리 (0) | 2022.09.29 |