2012-01-08 38 views
0

實施例:get函數聲明(在是pydoc輸出存在)與__doc__屬性

import numpy 
print numpy.polydiv.__doc__ 

輸出:

返回商和多項式除法的餘數...

雖然使用pydoc:

$ pydoc numpy.polydiv 

我得到:

numpy.polydiv = polydiv(U,V)
返回商和多項式除法的餘...

有一些可用的屬性,讓我來通過使用python腳本(不使用pydoc /終端)獲取函數聲明部分polydiv(u, v)

回答

3

爲防萬一您不知道,您可以在交互式會話中始終使用help函數來執行相當於pydoc呢。

但是,爲了回答您的具體問題:

可以使用inspect模塊獲得的函數對象的簽名:

>>> import numpy, inspect 
>>> def sig(func): 
...  argspec = inspect.getargspec(func) 
...  return func.__name__ + inspect.formatargspec(*argspec) 
... 
>>> print sig(numpy.polydiv) 
polydiv(u, v) 
+0

我只需要它的劇本,沒有交互模式的一部分。期待一些內建屬性,但你的答案做我需要的。謝謝 – theta 2012-01-08 03:17:20