Python으로 코드 작성 시 PEP8 스타일 가이드

Jaemin Kim·2023년 8월 16일
0

Coding Convention

목록 보기
1/2
post-thumbnail

22-04-24에 github.io에서 작성

PEP8

  • PEP8 : 파이썬 개선 제안서 -> 파이썬 코드를 어떻게 구상할 지 알려주는 스타일 가이드
  • 읽기 좋은 코드가 좋은 코드!
  • 스타일에 맞춰 코드를 작성하면 이후 수정하기도 편하다.

명명법

  • 함수, 변수, 속성 : losercase_underscore
  • protected 인스턴스 속성 : _leading_underscore
  • private 인스턴스 속성 : __double_leading_underscore
  • 클래스 및 예외 : CapitalizeWord
  • 모듈 수준 상수 : ALL_CAPS
  • 클래스의 인스턴스 메서드에서는 첫번째 파라미터 (해당 객체 참조)의 이름을 self로 지정
  • 클래스 메서드에서는 첫번째 파라미터(해당 클래스 참조)의 이름을 cls로 지정

공백, 줄바꿈

  • 코드 작성 시 한 줄의 문자 길이가 79자를 넘지 않도록

    • 줄을 바꿔야 할 때 예시
     # 인수를 구분하기 위해 4칸 더 들여쓰기
     def long_function_name(
            var_one, var_two, var_three,
            var_four):
         print(var_one)
    
     #리스트 요소, 인수 등 표기
     my_list = [
         1, 2, 3,
         4, 5, 6,
     ]
     result = some_function_that_takes_arguments(
         'a', 'b', 'c',
         'd', 'e', 'f',
     )
    
     #연산자의 경우
     income = (gross_wages
               + taxable_interest
               + (dividends - qualified_dividends)
               - ira_deduction
               - student_loan_interest)
    
     
     #이후 추가...  
  • Tab보다는 Space 4개를 활용(특히 섞어 쓰지 말 것!)

  • 함수와 클래스는 빈 줄 두개로 구분

  • 클래스에서 메서드는 빈 줄 하나로 구분

  • 변수 할당 앞 뒤에는 스페이스 1개

  • 리스트 인덱스, 함수 호출, 키워드 인수 할당에는 스페이스를 사용하지 않는다.

기타

  • import는 최상단에
    • import 순서 : 표준 라이브러리 모듈 > 서드파티 모듈 > 자신이 만든 모듈

참고


<복습>

  • 혼자 공부하면서, 프로젝트를 만들면서 가장 많이 찾아봤던 내용입니다. 봐도봐도 매번 까먹고 헷갈려서 스스로의 지능을 의심하게 만들었던 부분. 외운다기보단 손에 익혀야 했던 것이겠죠.
  • 전에 볼 때는 Tab 쓰는 것을 지양하라는 글이 많았던 것 같은데 요즘 글들에선 또 Tab을 쓰라는 투의 글이 많이 보여 따로 찾아봐야겠습니다.
  • 사실 윗 내용은 애매하면 찾아보고 고치면 그만이었는데 변수명 짓는 것이 가장 고통입니다.
profile
선생님..개발이 하고싶어요

2개의 댓글

comment-user-thumbnail
2023년 8월 16일

훌륭한 글 감사드립니다.

1개의 답글