假设我在 Python 中有一个这样的函数:
def foo(x): pass
根据 Python,“foo”本身就是一个函数引用,对吧?
>>> def foo(x): pass
...
>>> foo
<function foo at 0xb7f3d1b4>
有什么方法可以检查函数引用以确定它期望的参数数量吗?
最佳答案
你需要inspect.getfullargspec
在 py3k 或 inspect.getargspec
在早期版本中。
>>> def foo(x): pass
>>> import inspect
>>> inspect.getfullargspec(foo)
FullArgSpec(args=['x'], varargs=None, varkw=None, defaults=None, kwonlyargs=[], kwonlydefaults=None, annotations={})
关于python - 如何从 Python 中的函数引用中提取签名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2224428/