반응형
공백 (Whitespace)
공백은 탭, 스페이스, 새줄 포함
- 탭 대신 스페이스를 사용해 들여쓰기
- 문법적으로 중요한 들여쓰기는 4칸 스페이스를 사용
- 라인길이는 79개 이하
- 긴 식을 다음 줄에 이어서 쓸 경우에는 일반적인 들여쓰기보다 4 스페이스를 더 들여써야한다.
- 파일 안에 각 함수와 클래스 사이에는 빈줄을 두줄 넣어라
- 클래스 안에서 매서드와 매서드 사이에 빈줄을 한줄 넣어라
- 변수대입에서 = 전후에는 스페이스를 하나씩만 넣는다.
명명 규약
PEP8은 파이썬 언어의 여러부분에 사용하는 이름을 어떻게 붙일지에 대한 고유 스타일 제공
- 함수, 변수, 애트리뷰트 는 lowercase_underscore 처럼 소문자와 밑줄을 사용한다.
- 보호돼야하는 인스턴스 애트리뷰트는 일반적인 애트리뷰트 이름 규칙을 따르되, _leading_underscore 처럼 밑줄로 시작한다.
- 비공개(Private) 한클래스 안에서만 쓰기고 다른곳에서 쓰면안되는 경우, __leading_underscore 처럼 밑줄 2개로 시작
- 클래스(예외도 포함) 은 CapitalizedWord 처럼 여러단어를 이어붙이되 각단어의 첫글자를 대문자로 만든다.
- 모듈수준의 상수 는 ALL_CAPS 처럼 모든 글자를 대문자로 하고 단어와 단어사이는 밑줄로 연결한 형태
- 클래스에 들어있는 인스턴스 메서드는 호출대상 객체를 가리키는 첫번째 이름을 반드시 self를 사용해야 한다.
- 클래스 매서드는 클래스를 가리키는 첫번째 인자의 이름이ㅡ로 반드시 cls를 사용해야 한다.
임포트
PEP8 은 모듈을 임포트해 코드를 사용하는 방법에 대해서도 가이드라인 제시된다.
- import 문 (from x import y ) 을 항상 파일 맨앞에 배치
- 모듈을 임포트할때에는 절대적인 이름을 사용하고 현모듈의 경로에 상대적인 이름은 사용하지 말라
: bar 패키지로부터 foo 모듈을 임포트한다면 from bar import foo , 단지 import foo 를하면 안된다. - 반드시 상대적인 경로로 임포트 해야하는 경우 from . import foo 처럼 명시적인 구문을 사용하라
- 임포트를 적을 때는 표준 라이브러리 모듈, 서드파티 모듈, 여러분이 만든 모듈 순서로 섹션을 나눠라
파이린트 (Pylint) 도구 (https://www.pylint.org) 는 파이썬 소스 코드 분석하는 정적 분석시
반응형
'코딩의 기술' 카테고리의 다른 글
코딩의 기술/파이썬, 03 Bound method call & Unbound method call (0) | 2022.03.15 |
---|---|
코딩의 기술/파이썬, 02 Bytes 와 Str 의 차이 (0) | 2022.03.10 |