본문 바로가기
+ Development/Python

[Python] 자료형 확인

by :: Teacher :: 2018. 9. 23.
728x90
반응형

Python에서 변수를 정의할때 각 자료형에 따라 정의를 하고 있지 않으나, 함수, 조건문등을 사용시에 동일 자료형이 아닌 경우 정상적으로 처리 할 수 없음에 따라 내장함수인 type을 이용해 각 자료형을 확인 할 수 있다. 

1. 문자열

>>> type('abc')

<type 'str'>

>>> type('')

<type 'str'>

 

2. 정수형

>>> type(123)

<type 'int'>

 

3. None

>>> type(None)

<type 'NoneType'>

 

4. 사전형(Dict)

>>> type({})

<type 'dict'>

 

5. 리스트(List)

>>> type([])

<type 'list'>

 

6. 튜플(Tuple)

>>> type(())

<type 'tuple'>

7. 기타 자료형 비교

>>> import types

>>> dir(types)

['BooleanType', 'BufferType', 'BuiltinFunctionType', 'BuiltinMethodType', 'ClassType', 'CodeType', 'ComplexType', 'DictProxyType', 'DictType', 'DictionaryType', 'EllipsisType', 'FileType', 'FloatType', 'FrameType', 'FunctionType', 'GeneratorType', 'GetSetDescriptorType', 'InstanceType', 'IntType', 'LambdaType', 'ListType', 'LongType', 'MemberDescriptorType', 'MethodType', 'ModuleType', 'NoneType', 'NotImplementedType', 'ObjectType', 'SliceType', 'StringType', 'StringTypes', 'TracebackType', 'TupleType', 'TypeType', 'UnboundMethodType', 'UnicodeType', 'XRangeType', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__']

>>> type(123) == types.IntType

True

>>> type(123) == types.StringType

False

>>> type('abc') == types.IntType

False

>>> type('abc') == types.StringType

True

 

BooleanType : Bool 자료형

BufferType : buffer() 함수로 생성된 Buffer 객체형

ClassType : Class 자료형

DictType : Dict 자료형

DictionaryType : DictType의 다른 이름

FloatType : 실수(부동 소수점)형

FunctionType : 사용자 정의 함수, 람다 함수 형

LambdaType : FunctionType의 다른 이름

IntType : 정수형

ListType : 리스트형

LongType : Long 형

ModuleType : 모듈 형

NoneType : None 형

StringType : 문자열 형

UnicodeType : 유니코드 문자열 형

StringTypes : StringType, UnicodeType을 모두 포함하는 타입

TupleType : Tuple 형

TypeType : type 객체의 자료형(type()으로 리턴되는 자료형)

XRangeType : xrange()에 의행 리턴되는 range형     

728x90
반응형

댓글


loading