5

ネストされた関数のドキュメント、この場合は pydoc を生成する方法を探しています。これはpydocで可能ですか? 他のツールで可能ですか?

例えば:

"""
Module docstring.
"""

def foo(x):
    """
    Foo does something.
    """
    ...

    def bar(y):
        """
        Bar does something
        """
        ...

pydoc を次のように生成します: pydoc -w -filename- は、モジュールと foo() に対して pydoc を生成しますが、bar() に対しては生成しません。

通常はこれで問題ありません。問題は、私が教育目的でライブラリを構築しようとしていることであり、クロージャー内で何が起こるかを文書化することは特に役立ちます。内部関数をグローバル スコープに公開せずに文書化する方法を見つけたいと考えています。

4

1 に答える 1

1

常に手動の方法があります:

"""
Module docstring.
"""

def foo(x):
    """
    Foo does something.
    N.B. Foo includes a local function bar() that does what bar does.
    """
    ...

    def bar(y):
        """
        Bar does something
        """
        ...

これは自動的ではありませんが、学生が見たいと思っているプラ​​イベート メソッドのドキュメントだけを見ることができることを意味します。

于 2013-09-24T08:02:47.840 に答える