Python dir命令来确定方法



我使用Python的dir()函数来确定类具有哪些属性和方法。

例如,为了确定wx.Frame中的方法,我使用dir(wx.Frame)

是否有任何命令来确定每个方法的参数列表?例如,如果我想知道哪些参数属于wx.Frame.CreateToolBar()

如注释中所述,您可以使用help(fun)进入带有函数签名和文档字符串的帮助编辑器。您也可以简单地使用print fun.__doc__,对于大多数成熟的库,您应该获得有关参数和函数签名的合理文档。

如果你在谈论交互式帮助,可以考虑使用IPython,它有一些有用的附加功能。例如,您可以键入%psource fun以获得函数fun的源代码的打印输出,在完成制表符后,您只需键入wx.Frame.,然后单击tab键即可查看wx.Frame中可用的所有方法和属性的列表。

尽管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.
>>>

然而,理解方法、类和函数的另一个极其重要的工具是工具箱的API。对于内置的Python函数,您应该检查Python文档库。这就是我找到help()函数文档的地方。您使用的是wxPython,其API可以在这里找到,因此快速搜索"wx.Frame-API",您可以找到描述wx.Frame的所有方法和变量的页面。不幸的是,CreatteToolBar()并没有得到很好的记录,但你仍然可以看到它的论点:

创建工具栏(self,style,winid,name)

编码快乐!

最新更新