- 이 글은 파이썬알고리즘 인터뷰(박상길 지음)을 리뷰하였습니다.
1) 파이썬 코딩 스타일 참고 문서
www.python.org/dev/peps/pep-0008/
PEP 8 -- Style Guide for Python Code
The official home of the Python Programming Language
www.python.org
google.github.io/styleguide/pyguide.html
styleguide
Style guides for Google-originated open-source projects
google.github.io
Tip: 파이참 사용시 자동으로 PEP8 기준으로 경고를 띄워줌.
2) 변수명과 주석
1. 변수명: 스네이크 케이스로
2. 주석: 가독성 좋은 영어로 상세하게
3) 리스트 컴프리헨션
표현식이 2줄 넘지 않게, 적절한 줄바꿈으로 가독성을 높인다
4) PEP8
1. 한 줄의 문자 길이가 79자 이하여야 한다.
2. 함수와 클래스는 빈 줄 두개로 구분한다.
3. 클래스에서 메서드는 빈 줄 하나로 구분한다.
4. 변수 할당 앞 뒤에 스페이스를 하나만 사용한다.
5. 리스트 인덱스, 함수, 키워드 인수 할당에는 스페이스를 사용하지 않는다.
6. 함수, 변수, 속성 : lowercase_underscore
7. 보호(protected) 인스턴스 속성 : _leading_underscore
8. 비공개(private) 인스턴스 속성 : __double_leading_undersocre
9. 클래스와 예외 : CapitalizeWord
10. 모듈 수준 상수 : ALL_CAPS
11. 클래스의 인스턴스 메서드에서는 첫번째 파라미터 (해당 객체 참조)의 이름을 self로 지정
12. 클래스 메서드에서는 첫번재 파라미터 (해당 클래스 참조)의 이름을 cls로 지정
13. if no a is b 보다는 if a is not b 를 사용
14. if not somelist 처럼 빈 값은 암시적으로 False가 된다고 가정
15. if somelist 처럼 값이 있는 리스트는 암시적으로 True가 된다고 가정
16. 한 줄로 된 if문, for, while loop, except 복합문을 쓰지 않는다.
17. 항상 파일의 맨 위에 import 문을 놓는다.
18. 모듈 임포트시에는 항상 모듈의 절대 이름을 사용 import foo 대신 from bar import foo
19. 상대적인 임포트를 해야 한다면 명시적인 구문을 서서 from . import foo 라고 한다.
20. 임포트 순서 : 표준 라이브러리 모듈 > 서드파티 모듈 > 자신이 만든 모듈 / 각각의 하위 섹션에서는 알파벳 순서
5) 구글 파이썬 스타일가이드
1. 세미콜론(;) 사용 X
2. 한 라인 최대글자수는 80(영어기준)
3. 조건절, 리턴절에 괄호 사용 X
4. indentation(들여쓰기)는 공백 4개, 탭 사용 X
5. top-level definition에서는 공백 2라인(class 선언부분)
6. method definition(function, method 선언부)는 공백 1라인
'Study > 파이썬' 카테고리의 다른 글
파이썬 openCV 특징점검출 (0) | 2021.07.30 |
---|---|
시간복잡도 빅오(big-O) (0) | 2021.05.07 |
Python OpenCV: 탬플릿 매칭 matchTemplate (0) | 2021.04.30 |
Python OpenCV: 모멘트기반 객체검출 (0) | 2021.04.29 |
Python OpenCV: Grabcut-Segmentation (1) | 2021.04.29 |