https://peps.python.org/pep-0008/
1. 네이밍 컨벤션
파이썬에서는 네이밍 컨벤션으로 변수 / 함수를 네이밍할 때는 Snake 표기법을,
Class를 네이밍할 때는 Pascal 표기법을 사용한다.
1-1. Pascal
: PythonIsVeryGood / 각 단어를 대문자로 구별한다.
1-2. Camel
: pythonIsVeryGood / Pascal과 동일하지만, 첫 문자가 소문자로 시작한다.
모양이 쌍봉낙타와 비슷하게 생겼다고 해서 지어진 이름.
Camel 표현식은 첫 번째 문자가 소문자로 시작하는 Lower Camel Case와
첫 번째 문자가 대문자로 시작하는 Upper Camel Case가 존재한다.
이 때문에 간혹 Pascal과 Camel 표현법의 용어가 혼동되기도 하는데,
Microsoft에서는 소문자로 시작하는 표현법만 Camel로, 대문자로 시작하는 것은
Pascal이라고 명시하고 있다.
더 자세한 내용
https://en.wikipedia.org/wiki/Camel_case
1-3. Snake
: python_is_very_good / 각 단어를 언더바( _ )로 구분한다.
모양이 뱀과 비슷하게 생겼다고 해서 지어진 이름.
1-4. 예시
# 함수정의
def HelloWorld(): # X
def hello_world(): # O
# 변수선언
hello_world = "123" # O
Hello_World = "123" # X
# 클래스선언
class HelloWorld(): # O
class hello_world(): # X
2. 네이밍
클래스, 함수, 변수 등을 네이밍할 때는 이름만 보고 해당 코드가 어떤걸 의미하는지 추측할 수 있어야 한다.
- PIE = 3.14 상수를 표현할 때는 예외적으로 모든 문자를 대문자로 표현함.
- numbers = [1,2,3,4] list를 표기할 때는 복수로 표현한다. 혹은 number_list와 같이 표현할 수도 있음.
- for number in numbers: 반복문 사용 시 가독성을 늘릴 수 있다.
- def add(a, b): return a + b 함수를 네이밍할 때는 해당 함수가 어떤 역할을 하는지 표현해야 한다.
# 상수 정의 (한번 선언하고 바뀌지 않는 값)
PIE = 3.14
PIE = 1 # (코드컨벤션 틀림)
print(PIE) # 1 (문법에 문제는 없지만 코드컨벤션이 틀림)
NUMBER_LIST # 긴 상수 정의
3. VScode
확장 프로그램 autopep8 설치 후 settings 에서 설정해줌
settings 에서 저장 시 autopep8 활성화 시켜줌
4. Pycharm
pip install black
설정에서 black 검색 후 저장 시 black 활성화 시켜줌