본문 바로가기
개발 기본 규칙 및 환경설정

[기본 규칙] Python 코딩컨벤션

by cogito21_cpp 2024. 7. 19.
반응형

공통 규칙

1. 들여쓰기는 공백 4칸을 사용. tab 사용 불가

2. 각 줄의 최대 길이는 79자로 제한. 길어질 경우 \ 또는 괄호를 사용하여 다음줄로 나눔

3. 모듈 레벨 함수 및 클래스 정의는 두줄 간격으로 작성

4. 괄호, 중괄호, 대괄호 내부에는 공백 사용 금지

5. 쉼표, 콜론, 세미콜론 앞에 공백 사용 금지. 뒤에는 공백 사용

6. 주석은 한 줄의 경우 #을 사용하고 코드와 두칸의 공백을 둠. 여러 줄의 경우 """을 사용

7. docstring 작성시 """을 사용

 

변수 및 함수

1. 변수 및 함수명은 영어소문자 및 밑줄(_)로 구성된 snake_case로 작성

2. 상수는 영어대문자 및 밑줄(_)로 작성. 모듈 수준에서만 작성.

3. 연산자 앞뒤에 공백 사용

4. 문자열의 경우 쌍따옴표(")를 사용

5. 함수의 docstring은 함수에 대한 설명, args, return에 대한 설명을 포함

6. 함수 정의시 typing과 hint를 사용하여 타입 명명

7. bool 값 비교시 is 또는 is not을 사용

8. 한 줄 조건문은 삼항 연산자를 사용

9. 간단한 함수의 경우 lambda 사용

10. 글로벌 변수의 경우 모듈내에서만 사용하고 g_로 시작

자료구조

1. list와 dict 초기화시 list(), dict() 사용

2. set과 tuple 초기화시 set(), tuple() 사용

3. 간단한 list의 경우 list comprehension을 사용

 

클래스

1. 클래스명은 CamelCase로 작성

2. 클래스 상속시, 상위부모부터 순서대로 작성.

3. 클래스내 메서드는 한줄 간격으로 작성.

4. 메서드명은 snake_case로 작성

5. private의 경우 두 개의 밑줄(__)로 시작

6. protected의 경우 한 개의 밑줄(_)로 시작

7. 타입 검사시 isinstance()를 사용

8. 클래스 변수는 클래스명과 밑줄(_)로 구분

9. 클래스 정의시 생성자와 소멸자, __str__은 필수로 작성

모듈 및 패키지

1. 각 패키지 및 모듈은 별도의 줄에 작성

2. 표준 라이브러리, 서드 파티 모듈, 로컬 모듈 순서로 작성

3. 모듈명은 영어 소문자로 작성

 

파일 입출력

1. 파일을 열 때는 with을 사용하여 자동으로 닫히도록 함.

2. 로그 작성시 날짜와 시간은 반드시 포함할 것.

 

반응형