残念ながら、変数(および定数)にはドキュメントストリングはありません。結局のところ、変数は単なる整数の名前なので、関数またはクラスオブジェクトのやり方と同じように、数値の1
にドキュメントストリングを付けることは望ましくありません。
stdlibのほとんどのモジュールを調べると、pickle
のように、使用する唯一のドキュメントはコメントであることがわかります。完全にコメントを無視して...
DATA
APPEND = b'a'
APPENDS = b'e'
…
:はい、それはhelp(pickle)
はこれだけを示していることを意味します。あなたのドキュメントを組み込みのヘルプに表示するには、それらをモジュールのドキュメントストリングに追加する必要があります。これはまさに理想的ではありません。
しかし、スフィンクスはビルトインヘルプ以上のことができます。定数のコメントを抽出するように設定するか、autodata
を半自動で使用することができます。たとえば:
#: Indicates some unknown error.
API_ERROR = 1
#:
ライン任意の代入文、またはステートメントの右にある単一#:
コメントする前に、複数のは、事実上のオブジェクトのドキュメンテーション文字列がautodocのでピックアップと同じ動作します。インラインrSTを処理し、変数名のrSTヘッダを自動生成します。あなたがその仕事をするために必要なことは何もありません。サイドノートとして
、あなたの代わりにこのような独立した定数のenum
を使用して検討する必要があります。 Python 3.4をまだ使用していない場合は、3.238+ flufl.enum
のパッケージがあります(これは同じではありませんが、これはstdlibモジュールの主なインスピレーションでした)。 )で2.6+
列挙インスタンス(ないflufl.enum
が、STDLIB /バックポート版)も、ドキュメンテーション文字列を持つことができます。
class MyErrors(enum.Enum):
"""Indicates some unknown error."""
API_ERROR = 1
"""Indicates that the request was bad in some way."""
BAD_REQUEST = 2
"""Indicates that the request is missing required parameters."""
MISSING_PARAMS = 3
彼らは残念ながらhelp(MyErrors.MISSING_PARAMS)
には表示されませんが、スフィンクスのautodocのを拾うことができドキュメンテーション文字列です。
「これらの定数をどのように文書化できますか」とはどういう意味ですか?コメント(またはあなたの場合は文字列)を追加することは、すでにドキュメントの一形式です。 sphinx-autodocに内部文書を認識させ、それをスフィンクスの出力に表示する方法を尋ねていますか? – mgilson