【发布时间】:2012-01-17 18:40:38
【问题描述】:
我们怎样才能找到python程序中的所有函数???例如。
输入
def func1:
#doing something
def func2:
#doing something
def func3:
#doing something
输出
{'func1' , 'func2' , 'func3'}
【问题讨论】:
我们怎样才能找到python程序中的所有函数???例如。
输入
def func1:
#doing something
def func2:
#doing something
def func3:
#doing something
输出
{'func1' , 'func2' , 'func3'}
【问题讨论】:
如果你想要全局范围内的所有函数,你可以使用globals() 和inspect.isfunction():
>>> def foo():
... pass
...
>>> def bar():
... pass
...
>>> import inspect
>>> [member.__name__ for member in globals().values() \
... if inspect.isfunction(member)]
['bar', 'foo']
【讨论】:
猜测您只需要当前上下文中的方法:
import inspect
d = locals()
funcs = [f for f in d if inspect.isfunction(d[f])]
【讨论】: