이미 작성된 코드를 분석하다보면 네이밍 규칙이 잘 지켜지지 않은 코드들을 자주 보게됩니다. 프로그래밍 언어마다 약간씩 네이밍 규칙이 다르기 때문에 이런 실수가 간간히 발생할 수 있습니다. 그래서 오늘은 파이썬의 네이밍 규칙을 정리해 보려고 합니다.
1. 네이밍 규칙이 중요한 이유
Python에서 네이밍 규칙은 코드의 가독성과 유지보수성을 높이는 핵심 요소입니다. 일관된 네이밍은 협업과 디버깅을 쉽게 만들어 주며, Python 스타일 가이드(Python Enhancement Proposal 8, PEP 8)를 기반으로 표준화된 코드를 작성할 수 있도록 돕습니다.
2. Python 네이밍 규칙 개요
아래는 PEP 8에서 권장하는 주요 네이밍 규칙입니다.
• 변수(variable): 소문자와 밑줄(snake_case) 사용
user_name = "Smith"
total_price = 200.5
• 상수(constants): 모두 대문자와 밑줄(UPPER_SNAKE_CASE) 사용
MAX_LIMIT = 100
API_URL = "https://example.com/api"
• 함수(function): 소문자와 밑줄(snake_case) 사용
def calculate_total(price, tax):
return price + tax
• 클래스(class): 각 단어의 첫 글자를 대문자로(PascalCase)
class UserProfile:
def __init__(self, name):
self.name = name
• 모듈(module): 소문자와 밑줄(snake_case) 사용
import my_module
• 패키지(package): 소문자만 사용
from mypackage import my_module
3. 추가 네이밍 규칙
• 비공개 멤버: 밑줄 1개로 시작
class MyClass:
def __init__(self):
self._hidden_variable = 42
• 특수 메서드: 밑줄 2개로 시작하고 끝남
def __str__(self):
return "This is a special method"
• 길이가 긴 이름: 의미를 명확히 하면서도 적절히 줄임
def get_user_information():
pass
4. 자주 하는 실수와 피해야 할 점
1. 혼합된 네이밍 스타일 사용
# 피해야 할 예시
myVariable = 10 # CamelCase 사용 (Python에서 비권장)
2. 예약어 사용
# 피해야 할 예시
def class(): # SyntaxError
pass
3. 의미 없는 변수명
# 피해야 할 예시
x = 100 # 의미를 알 수 없는 변수명
5. 결론
Python의 네이밍 규칙을 따르는 것은 단순히 가이드라인을 넘어서, 협업과 코드 품질을 향상시키는 중요한 습관입니다. PEP 8을 준수하는 네이밍 스타일로 더 나은 코드를 작성해 보시기 바랍니다!