객체의 정의

현실에서 일어나는 모든 사건은 사건을 일으키는 주체와, 사건에 영향을 받는 대상이 존재한다. 즉, 사건이란 사물(여기선 사람도 사물에 포함된다고 하자)과 사물간의 상호작용이다.

사건 = 사물과 사물과의 상호작용

프로그래밍에서는 ‘객체’라는 개념을 사용해서 이러한 세상의 섭리를 표현한다. 프로그래밍에서 말하는 객체란 곧 현실의 사물과 같은 것으로 이해해 주었으면 한다. 우리가 이를 닦을 땐 칫솔을 사용하고, 밥을 먹을 때는 숟가락을 사용하는 것 처럼 프로그래밍에서는 문자열 연산을 할때 문자열 객체를 이용하고, 사칙 연산을 할 때는 int 나 float 객체를 이용한다. 객체의 엄밀한 사전적 정의는 ‘객체와 클래스’ 를 공부할때 다시 살펴보도록 하자.

객체의 종류, 형(type)

강아지와 고양이가 서로 다르고, 피자와 의자가 다른 것 처럼 프로그래밍의 객체도 저마다 종류가 있다. 그것을 자료형(type)이라고 한다. 자료형은 자료형 마다 고유의 성질을 가지고 있다. 예를 들어 int 나 float 같은 숫자형 자료형들은 사칙연산이 가능하다는 특징이 있다.

파이썬에서 객체의 자료형을 알고 싶다면 함수 type()을 사용한다. 예를 들어 type(1) 을 하면 정수 1의 자료형을 알려준다.

>>> type(1)
<class 'int'>

class ‘int’ 에서 int 는 영어로 ‘정수’를 뜻하는 integer 의 약자이다. 즉 객체 1 은 정수형 (혹은 정수 타입) 의 객체라는 뜻이다.

문자열에도 똑같이 type() 함수를 사용해 보자.

>>> type('안녕')
<class 'str'>

str 은 영어 string 의 약자로 ‘문자열’ 이라는 뜻이다. 문자열이라는 단어를 어렵게 생각할 필요는 없다. 고전적으로 프로그래밍에서는 ‘문자’ 라고 하면 문자 하나를 뜻했다. ‘c’ 한 글자가 문자이다. 그리고 그 문자가 여러 개 모여서 ‘문자의 나열’ 이 되면 ‘문자열’ 이라고 부를 뿐이다.

파이썬에서는 문자가 한 개 있든 여러 개 있든 똑같이 문자열 이라고 부르고, str 형의 객체이다.

기본 자료형

아무리 요리를 잘해도 가진 재료가 소금이랑 양배추면 맛있는 요리를 만들 수가 없다. (해봤자 양배추 찜 정도다.)

지금부터 배울 파이썬이 제공하는 기본 자료형들은 요리의 기본재료와도 같다. 자료형들의 특성을 잘 알고 활용해야 맛깔나는 파이썬 코드를 작성할 수 있다.

Updated:

Comments