Python PEP 8 요약

2star_·2025년 1월 29일
0

Python

목록 보기
13/13

Python PEP 8 요약

1️⃣ 코드 레이아웃

  • 들여쓰기: 4칸의 스페이스(space) 사용, 탭(tab) 사용 금지
  • 라인 길이: 최대 79자 (긴 줄은 \ 또는 괄호로 감싸서 줄바꿈)
  • 빈 줄: 최상위 함수·클래스 앞에 2줄, 메서드 간 1줄

2️⃣ 임포트 스타일

  • 순서: 표준 라이브러리 → 서드파티 → 로컬 모듈 (각 블록 사이 한 줄 띄움)

  • 형태:

    import os
    import sys
    
    from django.conf import settings
    from my_project.module import MyClass
  • 와일드카드 임포트 금지: from module import *는 지양

3️⃣ 네이밍 컨벤션

  • 함수, 변수, 속성: snake_case (소문자+언더스코어)
  • 클래스: PascalCase (대문자로 시작)
  • 상수: ALL_CAPS (대문자+언더스코어)
  • 비공개: _private_variable (접두어 _ 사용)

4️⃣ 공백 사용 규칙

  • 괄호 안 공백: spam(ham[1], {eggs: 2}) ✅ (spam( ham[1] , { eggs: 2 } ) ❌)
  • 쉼표 후 공백: a, b = 1, 2 ✅ (a,b=1,2 ❌)
  • 연산자 주위 공백: x = a + b ✅ (x=a+b ❌)

5️⃣ 문서화 (Docstrings)

  • 모든 모듈, 클래스, 함수에 docstring 추가
  • 예시
    def add(x, y):
        """두 수의 합을 반환합니다."""
        return x + y

6️⃣ 조건문, 루프

  • 한 줄 if문 지양
    if x == 42:
        print("정답입니다.")  # ✅
  • 불필요한 비교 연산 지양
    if my_list:  # ✅ 빈 리스트 체크 (`if len(my_list) > 0:` ❌)

7️⃣ 예외 처리

  • try-except 사용 시 특정 예외를 잡도록 권장
    try:
        value = my_dict["key"]
    except KeyError:
        value = "default"

🔗 더 보기: PEP 8 공식 문서

profile
안녕하세요.

0개의 댓글

관련 채용 정보