Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

파이썬은 클래스에 "개인" 변수를 가지고 있습니까?

<시간/> <본문>

Python 클래스에는 '개인 변수'가 없습니다. Python의 모든 변수와 메서드는 기본적으로 공용입니다. 변수 이름에 이중 밑줄 __ 접두사를 사용하여 개인 변수를 에뮬레이션하는 경우가 있습니다. 이렇게 하면 이러한 변수가 포함된 클래스 외부에서 이러한 변수가 보이지 않거나 쉽게 보이지 않습니다. 이것은 이름 맹글링을 통해 달성됩니다. 이러한 '비공개 변수'는 특정 해결 방법 코드를 사용하여 액세스할 수 있기 때문에 실제로 안전하지 않거나 비공개입니다. 따라서 변수 이름에 단일 밑줄 _(반개인)과 이중 밑줄 __(완전히 비공개)을 접두사로 붙이면 변수에 액세스하기 어렵고 변수를 포함하는 클래스 외부에서 쉽게 볼 수 없습니다.