我有一个相当简单的脚本,我需要在同一个脚本中获取函数及其参数的名称。我能找到的解决方案只是获取对象的方法或模块中的函数。但不适用于当前的脚本。 因此,对于下面脚本中的示例,我需要: (foo,a,b)和(bar,c,d)
def foo(a,b):
pass
def bar(c,d):
pass
this = gimmeFunctionsAndTheirArgNames()
答案 0 :(得分:1)
您可以通过这种方式获取本地范围内的函数列表:
>>> filter(callable, locals().values())
[<function bar at 0x01F337B0>, <function foo at 0x01F33430>]
或者,我想要一个functinon字典名称,你可以这样做:
>>> {f.func_name:f for f in filter(callable,locals().values())}
{'foo': <function foo at 0x01F33430>, 'bar': <function bar at 0x01F337B0>}