Sphinx Docstring 모범 사례
4633 단어 python
파이썬에서 함수, 클래스, 메서드, 심지어 전체 모듈은 바로 아래에 삼중 따옴표로 묶인 문자열을 가질 수 있습니다. 일반적으로 한 줄에 상수를 단독으로 넣으면 효과가 없고 그냥 무시됩니다. 그러나 이러한 Python 구성 중 하나 바로 아래에 있는 삼중 따옴표 문자열은 문서처럼 취급되기 때문에 특별합니다.
help()
콘솔에 표시되는 외부 도구와 Sphinx와 같은 문서 생성기에 의해 처리됩니다.독스트링은 PEP 257 에 정의되어 있습니다. 독스트링을 구성할 때 작은 따옴표 대신 큰 따옴표를 사용하는 것이 좋습니다. 독스트링은 다음과 같이 한 줄에 올 수 있습니다.
def foo():
"""This is a one-line summary of foo()"""
# function contents here
또는 요약 및 설명이 있는 여러 줄 독스트링으로:
def foo():
"""This is a one-line summary of foo()
This is a longer description of what foo()
does that can span several lines.
"""
# function contents here
PEP 257은 독스트링의 모양을 정의하지만 독스트링에서 함수, 특히 매개변수, 반환 값 및 예외를 정의하는 정확한 형식은 정의하지 않습니다. 그것은 PEP 287에 포함되어 있습니다.
reStructuredText란?
계속하기 전에 reStructuredText가 무엇인지 알아야 합니다. 풍부한 형식의 텍스트를 입력하기 위해 개발된 Python 커뮤니티이므로 문서에만 국한되지 않는 마크업 언어입니다. Markdown과 구문이 비슷하지만 몇 가지 주요 차이점이 있습니다.
- A bullet list item
- Second item
- A sub item
- Spacing between items separates list items
* Different bullet symbols create separate lists
- Third item
1) An enumerated list item
2) Second item
a) Sub item that goes on at length and thus needs
to be wrapped. Note the indentation that must
match the beginning of the text, not the
enumerator.
i) List items can even include
paragraph breaks.
3) Third item
#) Another enumerated list item
#) Second item
.. image::
한정자를 사용합니다... image:: /path/to/image.jpg
.. _Wikipedia: https://www.wikipedia.org/
__ https://www.python.org/
This is an ordinary paragraph, introducing a block quote.
"It is my business to know things. That is my trade."
-- Sherlock Holmes
reStructuredText의 스핑크스 독스트링 규칙
reStructuredText의 유연성으로 무장하면 문서를 생성하기 위해 Python 및 Python 기반 모듈에서 사용하는 Docutils에서 구현되기 때문에 Python이 특별히 볼 수 있는 docstring의 몇 가지 추가 지시문이 가능합니다.
여기에 나열할 5개의 docstring reStructuredText 지시문이 있습니다. 이러한 지시문은 Sphinx 문서 생성기에 의해 인식됩니다.
:param:
: 이름, 용도, 기본값과 함께 함수 매개변수를 나타냅니다.:param [ParamName]: [ParamDescription], defaults to [DefaultParamVal]
:type:
: 매개변수의 유형을 나타내며 연관된 :param:
지시문 바로 아래에 있어야 합니다. 또한 매개변수가 선택 사항인지 여부를 나타낼 수 있습니다. 매개변수가 필수임을 나타내려면 , optional
부분을 제외하기만 하면 됩니다.:type [ParamName]: [ParamType], optional
:raises:
: 예외가 발생했음을 나타내며 해당 유형 및 설명입니다.:raises [ErrorType]: [ErrorDescription]
:return:
: 함수에서 반환되는 내용을 나타낼 수 있습니다.:return: [ReturnDescription]
:rtype:
반환 값의 유형을 나타냅니다.:rtype: [ReturnType]
독스트링의 각 지시문 행은 110자 이하로 확장되는 것이 관례입니다. 지시문이 여러 줄에 오버플로되면 첫 번째 줄의 시작 부분을 기준으로 4칸 들여쓰기됩니다.
그리고 우리는 끝났어
이 게시물에 오류가 있으면 알려주시면 수정할 수 있도록 하겠습니다.
출처:
https://en.wikipedia.org/wiki/ReStructuredText
https://docutils.sourceforge.io/docs/ref/rst/restructuredtext.html
https://sphinx-rtd-tutorial.readthedocs.io/en/latest/docstrings.html
Reference
이 문제에 관하여(Sphinx Docstring 모범 사례), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/zenulabidin/sphinx-docstring-best-practices-2fca텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)