Sto cercando di capire gli argomenti di un metodo recuperato da un modulo. Ho trovato un modulo inspect
con una comoda funzione, getargspec
. Funziona per una funzione che definisco, ma non funzionerà per le funzioni di un modulo importato.Python inspect.getargspec con funzione integrata
import math, inspect
def foobar(a,b=11): pass
inspect.getargspec(foobar) # this works
inspect.getargspec(math.sin) # this doesn't
prendo un errore come questo:
File "C:\...\Python 2.5\Lib\inspect.py", line 743, in getargspec
raise TypeError('arg is not a Python function')
TypeError: arg is not a Python function
è inspect.getargspec
progettata solo per le funzioni locali o sto facendo qualcosa di sbagliato?
sì, è stato progettato in questo modo, vedi http://bugs.python.org/issue1748064 – georg