[Python] Pythone에서 Class, Method, Member Variable 사용하기
Python에서 Class 을 사용할 수 있으며, public, private, protected 등을 통해 정보 은닉 기능을 제공한다.
1. Class 선언
Python에서 클래스 선언과 사용은 쉽다.
아래 예제는 ','로 구분되어진 텍스트 파일에서 각 항목별로 데이터가 중복되지 않고 어떤 항목들이 있는지를 찾아내는 프로그램이다. 예제에서는 FileDataConverter, ItemInfo 등 두 개의 class을 선언하고, 각 class 안에 멤버 변수와 메소드를 정의하여 사용하였다.
2. Public, Protected(_), Private(__) : 접근 제어(정보 은닉)
Python은 기본적으로 Class 내에 메소드나 멤버 변수를 선언하는 키워드는 없다. 메소드나 멤버변수 이름 앞에 다음과 같은 prefix 들 추가하면 된다.
- '': public
- prefix가 없다면 모든 것은 public
- '_' : protected
- 이름 앞에 '_' 을 추가하면 protected 로 선언
- '__'
- 이름 앞에 '__'를 추가하면 private로 선언
위 예제에서 일부 멤버 변수와 메소드에 접근 제어를 한 수정된 코드는 다음과 같다.
C++나 Java를 사용했던 사람들은 조금 어색할 수 있지만, 개인적으로 명확하고 깔끔한 선언 방법으로 느껴지다.
3. 참조
- Python Software Foundation / Documentation : https://docs.python.org/2/tutorial/classes.html
댓글
댓글 쓰기