-
파이썬! 지켜야할 기초 코딩 룰, 컨벤션Develop 2016. 3. 15. 22:30파이썬에서 쓰이는 코딩 컨벤션은 C, C++에서 보던 것과는 비슷하면서도 다른 면이 있다. 이러한 코딩 컨벤션은 PEP(Python Enahncement Proposals) 8에서 정의하고 있는데 이에 대해 알아보도록 하자.탭보다 4 space항상 우리를 괴롭히는 논쟁거리이긴 하지만 PEP8에 따르면 공백을 표준으로 코딩해 나가길 권장하고 있다. 물론 나역시 tab을 선호하긴 하지만 vim을 비롯한 대부분의 IDE 및 에디터에서는 상호 변환이 잘 이뤄지기 때문에 큰 문제는 없을 것이다.
하지만 난 여전히 tab이 좋다...라인 당 79자 제한생각보다 79자 제한이 여유롭지 않게 느껴지는데 아래와 같은 방법으로 코딩을 해야 할 것이다.def function_example(
one,
two,
three):
...
여기서 주의할 점은 인자를 한 줄에 모두 쓰던가, 혹은 위와 같이 내려야 된다고 권장한다.권장하지 않는 케이스def function_example(one,
two,
three):
...
다중 라인이 필요한 경우, 필요에 따라서 괄호를 '(', ')'를 활용하는 것도 추천된다예)from bul.ra.bul.ral.module import (
so, many, libraries, are, needed)
import 한 줄당 하나의 library한 줄당 하나의 라이브러리를 import 하는 것이 원칙이다예를 들어 아래는 권장되지 않는다import os, sys, argparseimport 순서다른 언어들과 비슷하게 아래의 순서대로 import 한다- standard library
- third party
- local application 및 library
변수명으로 'l', 'O', 'I' 피할 것변수 이름으로 가독성이 떨어지는 위 글자 사용을 지양하도록 한다.클래스, 함수 그리고 변수 이름 명명법간단하게 외우는 방법은...Class와 Exception에는 CapWords (CamelCase)을 적용하고,그 밖에 다른 변수나 함수 명은 소문자와 '_'를 사용한다. (C 스타일)그리고 예외 케이스 하나로 global 상수의 경우는 대문자와 '_'를 사용한다아래 예제를 보면 쉽게 이해가 가리라 생각된다.진리의 예제ClassNameExceptionNamemodule_namepackage_namemethod_namefunction_namefunction_parameter_nameglobal_var_namelocal_var_nameinstance_var_nameGLOBAL_CONSTANT_NAME파이썬을 코딩하며 필수적인 컨벤션에 대해 알아보았다. 물론 위에 언급한 내용은 기초적인 내용이며 필수적으로 지켜나가야할 룰이지만, 모든 컨벤션이 그렇듯 각 팀이 운영하는 스타일이 있다면 그에 맞춰 따라가는 것이 중요할 것이다.나조차도 몇몇은 이해가 가지 않는 항목들이 존재하고 때에 따라선 따르지 않고 있다.... (!!?)Reference:댓글