name mangling
Name Mangling 파이썬에서 “name mangling"은 클래스 내부의 속성이나 메서드의 이름을 변경하는 기능이다. 이 기능은 주로 정보 은닉과 캡슐화를 위해 사용된다. 네임 맹글링의 작동 방식 더블 언더스코어 사용: 클래스 내에서 속성이나 메서드 이름 앞에 두 개의 언더스코어(__)를 붙이면 자동으로 네임 맹글링이 적용된다. 1 2 3 4 5 6 7 8 9 10 11 class Person: def __init__(self): self.__name = "김철수" # 실제로는 '_Person__name'으로 변환됨 def __private_method(self): # 실제로는 '_Person__private_method'로 변환됨 return "비공개 메서드" person = Person() print(dir(person)) # 실제 변환된 이름을 확인할 수 있음 print(person.__name) # AttributeError 발생 print(person._Person__name) # 김철수 출력 이름 변환 규칙: ...