갈루아의 반서재

변수, 이름, 객체

파이썬에서 모든 것(부울, 정수, 상수, 문자열, 데이터 구조, 함수, 프로그램)은 객체object 로 구현된다. 객체데이터가 담긴 투명한 플라스틱  박스다. 투명한 유리창으로 밀봉된 박스(값을 볼 수 있지만 바꿀 수는 없다)는 불변immutable , 열려있는 상자는 데이터 값 변경이 가능한 가변mutable 으로 볼 수 있다.

파이썬은 객체의 타입을 바꿀 수 없는 강타입이다. 

변수는 단지 이름일 뿐이다. 메모리에 있는 값을 참조하기 위한 이름이다. = 을 통해 할당하게 된다. 할당이라는 의미는 값을 복사하는 것이 아니라 데이터가 담긴 객체에 그냥 이름을 붙이는 것이다. 포스트잇이라고 생각하면 된다. 

>>> a = 7
>>> print(a)
7
>>>

변수 이름 b도 7이 담긴 객체 상자에 붙인다.

>>> a = 7
>>> print(a)
7
>>> b = a
>>> print(b)
7
>>>

클래스class 는 객체의 정의를 의미한다. 파이썬에서 classtype 은 거의 같은 의미이다.

파이썬 변수 이름 사용규칙은 다음과 같다.

  • 소문자, 대문자, 숫자, 언더스코어만 사용가능
  • 숫자로 시작할 수 없다
  • 예약어는 사용할 수 없다