1

私は Python のdir()関数を使用して、クラスが持つ属性とメソッドを判別しています。

たとえば、 のメソッドを決定するにはwx.Frame、次を使用しますdir(wx.Frame)

各メソッドの引数のリストを決定するコマンドはありますか? たとえば、どの引数が に属しているかを知りたい場合wx.Frame.CreateToolBar()

4

2 に答える 2

2

コメントで述べたようにhelp(fun)、関数の署名とdocstringを使用してヘルプエディタに入ることができます。また、単純に使用することもできprint fun.__doc__ます。ほとんどの成熟したライブラリでは、パラメーターと関数のシグネチャに関する適切なドキュメントを入手する必要があります。

インタラクティブヘルプについて話している場合は、いくつかの便利な追加機能があるIPythonの使用を検討してください。たとえば%psource fun、入力して関数のソースコードのプリントアウトを取得し、funタブ補完を使用して入力し、Tabキーを押すだけwx.Frame.で、内で使用可能なすべてのメソッドと属性のリストを表示できますwx.Frame

于 2012-09-23T02:22:15.890 に答える
1

GP89 ​​はすでにこの質問に答えているようですが、もう少し詳細に飛び込んでみようと思いました。

まず、GP89 ​​の提案は、Python の組み込みhelp()メソッドを使用することでした。これは、インタラクティブ コンソールで使用できる方法です。メソッドの場合、定義されている場合は、クラスのdocstringとともにメソッドの宣言行を出力します。<object>.__doc__たとえば、次のようにしてこれにアクセスすることもできます。

>>> def testHelp(arg1, arg2=0):
...    """This is the docstring that will print when you
...    call help(testHelp). testHelp.__doc__ will also
...    return this string. Here is where you should
...    describe your method and all its arguments."""
...
>>> help(testHelp)
Help on function testHelp in module __main__:

testHelp(arg1, arg2=0)
    This is the docstring that will print when you
    call help(testHelp). testHelp.__doc__ will also
    return this string. Here is where you should
    describe your method and all its arguments.
>>>

ただし、メソッド、クラス、および関数を理解するためのもう 1 つの非常に重要なツールは、ツールキットの API です。組み込みの Python 関数については、Python Doc Libraryを確認してください。そこで、help()関数のドキュメントを見つけました。ここで API を見つけることができる wxPython を使用しているので、「wx.Frame api」をすばやく検索すると、すべてのメソッドと変数を説明しているこのページを見つけることができます。wx.Frame残念ながら、CreatteToolBar()特に十分に文書化されていませんが、それでも引数を見ることができます:

CreateToolBar(自分自身、スタイル、winid、名前)

ハッピーコーディング!

于 2012-09-23T02:32:32.127 に答える