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형
'+ Development > Python' 카테고리의 다른 글
[Python] 홀수, 짝수 나누기 (0) | 2019.07.13 |
---|---|
[Python] 연산자 정리 (0) | 2018.09.23 |
[Python] 변수명(함수명, 클래스명등) 만드는 법 (0) | 2018.09.23 |
[Python] MySQL-Python 설치 (0) | 2018.09.23 |
[Python] Virtualenv 설치 및 사용법 (0) | 2018.09.22 |
댓글