-
파이썬 클래스와 객체IT 2021. 1. 10. 18:42반응형
파이썬 프로그래밍 언어를 그나마 가장 깊이 공부하고 있다.
객체와 클래스 등 기본 개념인데 모호한 용어들을 한 번 정리해 본다.
Data : Value(값), Type(유형) 으로 구성
Data Type : Data가 속하는 범주를 나타냄
Class : Data Type을 나타내는 Data. (int, float, str 등)
※ 정확하지 않지만, 아래처럼 집합 관계로 볼 수 있겠다.
Class > Data Type > Data# Data Type 확인하기 >>> type(0) # 숫자 0의 type은 int(정수) <class 'int'> >>> type('0') # '0'의 type은 str(문자열) <class 'str'> >>> type(type(0)) # 숫자 0의 type의 type은 type <class 'type'> >>> type(type(type(0))) # 숫자 0의 type의 type의 type도 type <class 'type'>
Object(객체) : 메모리 상의 개별 Data를 가리킴.
- Value : 객체의 정보 그 자체. 가변 객체, 불변 객체.
- Type : 객체의 범주. 클래스로 나타내며, type() 함수로 확인.
- Identity(정체성) : 다른 객체와 구별하기 위한 고유번호.
메모리 상의 위치. id() 함수로 확인.# 객체의 Vaue, Type, Identity 확인하기 >>> year = 1978 # 객체를 만들어 변수에 대입 >>> year # 객체의 value(객체 자신) 확인 1978 >>> type(year) # 객체의 type(클래스) 확인 <class 'int'> >>> id(year) # 객체의 identity(고유번호) 확인 140147693424912 #두 객체의 값, 유형, 정체성 비교 >>> new_year = 1978 # 다른 객체 >>> year == new_year # 두 객체의 값 비교 True >>> type(year) == type(new_year) # 두 객체의 유형 비교 True >>> id(year) == id(new_year) # 두 객체의 정체성 비교 False >>> same_year = year # 동일한 객체를 다른 변수에 대입하면, >>> id(year) == id(same_year) # 두 변수가 같은 객체를 가리킨다. True
Variable(변수) : 객체에 붙인 이름. 한 객체에 여러 개의 이름을 붙일 수 있다.
Instance : 어떤 클래스에 속하는 객체를 지칭.
예를 들어, {1,2,3,4}는 모두 int 클래스의 인스턴스이다.# isinstance() 함수를 이용해 객체가 유형에 속하는지 확인하기 >>> isinstance(1978, int) # 1978은 int의 인스턴스인가? True >>> isinstance(3.14, int) # 3.14는 int의 인스턴스인가? False
※ 파이썬의 모든 데이터(함수, 클래스, 예외(Exception), 모듈(Module) 등) 는 객체이다.
참고 : python.bakyeono.net/chapter-8-2.html
728x90반응형'IT' 카테고리의 다른 글
Spotfire 11.1.0 한글 User's Guide 설명서 (0) 2021.01.10 TIBCO Spotfire 30일 무료 평가판 설치 (0) 2021.01.10 파이썬 UCI Auto MPG 시각화 연습 (0) 2021.01.09 SKT 30% 저렴한 온라인 요금제... (0) 2021.01.04 파이썬 기초 통계 2 (0) 2021.01.03