2013-06-22 5 views
3

비공개 및 보호 된 액세스 지정자를 파이썬으로 시뮬레이트 할 수 있습니까?비공개로 보호 된 액세스 지정자

는 이름

는 예를 들어 맹 글링 :

__var=10 

개인 시뮬레이션 할 수 있지만 가능한이 객체를 통해 외부에 쉽게 액세스 할 수 있습니다.

object._className__var 

그래서 우리가 시뮬레이션 할 수있는 방법이 있습니까, 아니면 제가 인식하지 못하는 해결책이 있습니까?

답변

6

파이썬에는 익숙한 다른 언어처럼 필수 액세스 제어가 없습니다. 이 언어의 철학은 "우리 모두는 성인에 동의합니다"입니다.

일반적으로 개인 특성 앞에는 밑줄이 붙습니다. 이는 사람들에게 직접 사용하면 안된다는 힌트입니다. 그러나 그것은 바로 그 대회입니다. 파이썬을 샌드 박스로 만들려면 별도의 프로세스에서 수행해야합니다.

이중 밑줄 맹 글링의 목적은 우발적 인 이름 충돌을 방지하고 액세스 제어를 강화하는 것이 아닙니다.

+0

감사합니다. @Antimony. 이름 변경이 액세스 제어를 시행하는 데 사용된다는 사실을 알고 있습니다. btw 내 질문은 어떻게 우리가 액세스 제한을 시뮬레이션하는 이유입니다 게시물 : p – deeshank

+2

대답은 당신이 아니야. 반사 해킹을 사용하여 시뮬레이션을 정렬 할 수 있지만 리플렉션을 사용하면 쉽게 해킹을 수행 할 수 있습니다. 진짜 질문은 당신이 습득하려는 것입니다. – Antimony

관련 문제