1

我的程序从用户输入中派生出一个序列args和一个映射。kwargs我想检查该输入,然后将其转发给 python 函数f(根据用户输入选择)。f在这种情况下,和之间的函数签名不匹配[kw]args输入错误;我必须将其与实现中可能出现的编程错误区分开来f,即使它们都可能引发TypeError.

所以我想在尝试函数调用之前检查签名。除了手动比较(或更高版本的python版本)[kw]args的结果之外,还有其他方法吗?inspect.getargspec.getfullargspec.signature

相关问题: 有没有办法在 Python 中检查函数的签名?

4

1 回答 1

2

using 的方法inspect可能是最直接的方法——这不是人们通常期望在 Python 中做的事情。

(通常,允许最终用户使用任意输入调用任意函数并不是程序员想要的。)

于 2013-01-27T08:54:49.643 回答