파이썬은 private 변수를 선언할 수 없다.
흔히 __b 와 같이 attribute 혹은 메서드를 선언한다면 private하게 쓸 수 있다고 알고 있는 사람들이 많지만,
사실 dir(instance)를 출력해보면 _ClassName__b 와 같은 형태로 네임스페이스에 저장되어 있는 것을 알 수 있다.
즉, private 변수를 선언해주는 것이 아니라 compiler에 의해 mangling될 뿐이다.
이 방법은 실제로 private하지 않은데도 private하게 생각될 여지가 있어 파이썬에서도 권장되지 않는다.
관례적으로는 _b와 같이 쓴다고 한다.
하지만 진정한 의미의 private 변수는 존재하지 않는다.
'language' 카테고리의 다른 글
데이터의 입력과 출력 (0) | 2019.09.24 |
---|---|
파이썬의 class와 self (0) | 2019.09.21 |
파이썬을 파이썬답게 (0) | 2019.09.16 |
파이썬 언어의 특징, 연산자 오버로딩, 할당, 자료형1 (0) | 2019.09.11 |
정렬 - list.sort(), sorted() (0) | 2019.09.06 |