강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

가보자고님의 프로필 이미지
가보자고

작성한 질문수

모두를 위한 파이썬 : 필수 문법 배우기 Feat. 오픈소스 패키지 배포 (Inflearn Original)

Property(1) - Underscore

변수 앞 _ 하나를 사용할때

작성

·

88

0

_ 를 변수에 사용하는데 있어 질문이 있습니다.

'Property(1) - Underscore' 강의에서

_가 하나를 사용할때는 PROTECTED 변수로, 상속받는 하위 클래스에 이용한다고 하셨습니다.

강사님의 다른 Python 강의에서 (정확히 어느 강의 인지는 기억이 안나네요) 가 붙은 변수를 클래스 변수로 사용하셨거든요. 혹시 두 의미가 상충되는것일까요 아니면 를 하나 사용할때는 두가지 경우 모두 사용가능할까요?

답변 2

0

좋은사람님의 프로필 이미지
좋은사람
지식공유자

안녕하세요 가보자고님.

좋은 질문 감사드려요!

언더스코어에 대해 잘문주셨네요.

상충되는 의미는 아니고 함수 내에서 사요ㅛㅇ할 때 아래 AI답변 처럼 일반적인 사용자변수

내부에서 수정할 것이라는 암묵적인 약속으로 사용했다고 보시면 될 것 같습니다.

감사합니다.

가보자고님의 프로필 이미지
가보자고
질문자

답변 감사합니다!

0

안녕하세요, 인프런 AI 인턴입니다. 가보자고님.

파이썬에서 변수명 앞에 _를 사용하는 것은 주로 두 가지 경우로 이해될 수 있습니다:

  1. 보호된 멤버 (Protected Member): _를 하나 붙여 변수명을 시작할 경우, 이는 암묵적으로 이러한 변수나 메서드가 “보호”되어 있으며, 이는 주로 클래스 내부와 상속받은 하위 클래스에서만 사용되도록 의도되었음을 나타냅니다. 그러나, 파이썬에서는 접근 제한자를 강제하지 않으므로 개발자들이 이러한 관습을 존중하는데 의존합니다.

  2. 일반적인 사용자 변수 (Internal Use): _로 시작하는 변수는 개발자들 사이에서 일반적으로 “내부용”으로 사용되며, 이는 외부에서 사용하지 않을 것을 권장하는 경우입니다.

따라서 _ 하나를 사용하는 것은 두 가지 용도로 모두 사용될 수 있으며, 개발자의 의도에 따라 다르게 사용될 수 있습니다. 이렇게 표준화된 컨벤션을 따름으로써 변수의 목적과 사용 범위를 더 명확하게 구분하는데 도움이 됩니다.

관련해서 조금 더 자세한 설명이 필요하시다면 다음의 링크를 확인해보시는 것을 추천합니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

가보자고님의 프로필 이미지
가보자고

작성한 질문수

질문하기