Please Enable JavaScript!
Gon[ Enable JavaScript ]

파이썬(Python) type 함수 사용하기

파이썬 Python
반응형

type 함수는 오브젝트의 클래스 타입을 알고 싶을 때 사용하는 함수입니다. 주로 디버깅을 목적으로 사용합니다. 동적으로 클래스 타입을 만들 때도 type() 함수를 사용하는데, 이번 포스팅에서는 설명을 제외했습니다.

 

 

1. 자료 유형 확인

 

함수 형태는 type(obj) 입니다. 매개변수로 입력한 obj 의 클래스 타입을 반환합니다. 대부분 type() 함수는 디버깅을 목적으로 사용합니다. type 함수의 매개변수에 데이터를 직접 입력하거나 변수에 데이터를 담아 타입을 확인합니다. 데이터가 존재하지 않는 None Type type 함수를 통해 확인이 가능합니다. 

# 자료 유형 확인
print(type(100))
 
a = 100
print(type(a))
 
b = None
print(type(b))
 
[결과]
<class 'int'>
<class 'int'>
<class 'NoneType'>

 

 

2. type 함수와 if 분기문을 통해 타입 검사하기

 

type 함수를 사용해서 자료형을 비교할 때 if 같은 분기문을 많이 사용합니다. 두 자료형을 비교하는 참조 비교 연산자인 is 를 함께 사용했습니다. 

dict_type = {1:'a', 2:'b', 3:'c'}
list_type = [1, 2, 3, 4]
 
if type(dict_type) is not type(list_type):
    print('다른 타입')
else:
    print('동일한 타입')
 
[결과]
다른 타입

 

아래 예제처럼 자료형의 클래스명을 입력해서 비교할 수도 있습니다. 

dict_type = {1:'a', 2:'b', 3:'c'}
 
if type(dict_type) is dict:
    print('dict type')
else:
    print('dict not type')
 
[결과]
dict type

 

또 다른 방법은 type 함수로 리턴 받은 값을 str 함수로 문자열 변환해서 비교하는 방법도 있습니다. 

int_type = 1
if str(type(int_type)) == "<class 'int'>":
    print('int type')
else:
    print('not int type')
 
[결과]
int type
반응형
Posted by 녹두장군1
,