파이썬의 주석 처리는 크게 두가지로 나눌 수 있습니다.
1. 주석 (#)
2. 독스트링, 'docstrings', (독스트링, 특수 주석)
1. 일반 주석 (#)
일반 주석은 주석처리를 하고 싶은 코드의 시작 지점에 # (해시 기호)를 해서 주석 처리를 할 수 있습니다.
# 기호 와 같은 행에서 뒤에 오는 모든 요소는 주석으로 간주되며 인터프리터가 # 이후의 내용을 무시하고 다음 코드줄로 이동합니다.
주석은 다양한 목적으로 사용할 수 있는데,
1. 코드 블록 혹은 변수에 대한 정보 제공
2. 코드의 복잡하거나 모호한 부분 설명
3. 함수 또는 클래스의 동작 설명
4. 인수의 목적과 예상 반환값을 문서화
5. 개발자 메모 추가
6. 테스트, 혹은 디버깅 목적으로 일부를 일시적으로 비활성화 등이 있습니다.
(예를 들어 개발을 진행하려고 했다가 이번에는 하지 못하게 되는 일에 대한 코드를 삭제하지 않고 그냥 주석으로 처리하는 경우가 존재할 수 있습니다.)
나중에 그 프로그램을 누군가가 더 발전시켜서 사용할 수도 있고,
몇달 뒤에 내가 그 프로그램을 다시 쓸 일이 있어서 레거시 코드를 열었을 때 헤멜 시간을 줄여주는 아주 소중한 존재입니다.
2. 독스트링, 'docstrings', (독스트링, 특수 주석)
독스트링은 아래와 같은 형태를 띕니다.
"""
a is left side, b is right side
"""
이런 식으로 쌍따옴표가 세개 있는(삼중 쌍따옴표) 사이에 여러줄의 주석을 넣을 수 있습니다.
이런 여러줄 주석에 있는 변수를 활용할 수도 있다는 점이 javascript 등에서 있는 여러줄 주석과의 차이점입니다.
javascript의 여러줄 주석은 인터프리터에서 인식되지 않으며 런타임 중에 액세스 할 수 없습니다.
반면 파이썬의 독스트링은 런타임 중에 액세스 할 수 있으며 객체의 __doc__ 속성을 통해 액세스 할 수 있습니다.
독스트링은 api 문서를 자동으로 생성하기 위해 Sphinx 와 같은 문서 생성 도구에서도 사용됩니다.
/** */ 와 """ """ 둘 다 여러줄을 주석화시킬 수 있고, 함수나 파일의 윗부분에서 변수 등에 대한 설명을 해준다는 공통점이 있으나 파이썬의 독스트링은 런타임 중에 액세스 할 수 있고 문서 생성 도구에서 사용할 수 있으므로 더 강력하다는 특징을 가지고 있습니다.


