web-dev-qa-db-ja.com

Pydocでドキュメントを作成するにはどうすればよいですか?

モジュールからドキュメントを作成しようとしています。 Python 3.2.3を使用して、Windows 7のコマンドラインからpydocを使用しました。

python "<path_to_pydoc_>\pydoc.py" -w myModule

これにより、モジュール内のファイルごとに1行のテキストがシェルに表示され、次のようになりました。

no Python documentation found for '<file_name>'

Pydocが私のファイルのドキュメントを取得しようとしているようですが、自動作成したいのです。 Googleを使用した良いチュートリアルが見つかりませんでした。 Pydocの使用方法に関するヒントはありますか?

を使用して1つのファイルからドキュメントを作成しようとすると

python ... -w myModule\myFile.py

wrote myFile.htmlと表示され、開くと、次の1行のテキストが表示されます。

# ../myModule/myFile.py

また、コンピューター上のファイル自体へのリンクがあり、クリックするとWebブラウザーでファイル内の内容が表示されます。

58
user1632861

RocketDonkeyが示唆したように、モジュール自体にいくつかのdocstringが必要です。

たとえば、myModule/__init__.py

"""
The mod module
"""

また、次を使用してmyModule/*.pyの各ファイルのドキュメントを生成することもできます。

pydoc myModule.thefilename

生成されたファイルがメインモジュールのドキュメントファイルから参照されているファイルと一致することを確認します。

32
michel-slm

人々が便利だと思うかもしれないもう一つのこと...あなたのモジュール名から「.py」を忘れないようにしてください。たとえば、「original.py」で'original'のドキュメントを生成しようとしている場合:

yourcode_dir$ pydoc -w original.py
no Python documentation found for 'original.py'

yourcode_dir$ pydoc -w original
wrote original.html
83
Taylor

pydocはドキュメントを生成するのに最適ですが、ドキュメントは最初に作成する必要があります。 RocketDonkeyのコメントに記載されているように、ソースコードにはdocstringが必要です。

"""
This example module shows various types of documentation available for use
with pydoc.  To generate HTML documentation for this module issue the
command:

    pydoc -w foo

"""

class Foo(object):
    """
    Foo encapsulates a name and an age.
    """
    def __init__(self, name, age):
        """
        Construct a new 'Foo' object.

        :param name: The name of foo
        :param age: The ageof foo
        :return: returns nothing
        """
        self.name = name
        self.age = age

def bar(baz):
    """
    Prints baz to the display.
    """
    print baz

if __== '__main__':
    f = Foo('John Doe', 42)
    bar("hello world")

最初のdocstringは、pydocを使用してドキュメントを作成する手順を提供します。さまざまな種類のdocstringの例があり、pydocで生成されたときの外観を確認できます。

73
zzzirk