7장 클래스와 객체지향 프로그래밍
self
클래스에서 유효 범위가 생성되지 않는 점은 파이썬이나 C++나 자바와 다른 점 중 하나이다.
C++나 자바를 써본 적이 있으면 파이썬의 self 매개변수를 this 포인터와 같다고 생각하면 된다.
파이썬에서는 변수를 명시적으로 선언할 수 있는 방법(즉, C에서 int x나 flot y 같은 선언)이 없기 때문에 self를 써주어야 한다. 그렇지 않으면 메서드에서 변수에 값을 대입할 때 이 값이 지역 변수에 대입되어야 하는 지 인스턴스 속성에 저장되어야 하는지 알 수 있는 방법이 없다. self를 직접 써줌으로써 이 문제를 해결한다. Self에 저장되는 값은 모두 인스턴스의 일부가 되고 나머지는 모두 지역 변수에 저장 된다.
'Computer Science > Python' 카테고리의 다른 글
GUI 프로그래밍 (0) | 2013.06.23 |
---|---|
ImageMagick for Python (0) | 2013.05.07 |
3장 타입과 객체 (0) | 2012.07.01 |
2장 어휘 규약과 구문 (0) | 2012.07.01 |
1장 파이썬 맛보기 (1) | 2012.06.21 |