Python 获取偏函数的参数

10 投票
1 回答
6377 浏览
提问于 2025-04-16 18:10

我想做的事情和这里提到的类似,具体可以参考这个链接 获取Python函数内参数名称的列表,不过我想用部分函数(partial functions)。也就是说,我需要获取部分函数的可能参数。我可以通过以下代码获取关键字参数:

my_partial_func.keywords

但是我现在在获取非关键字参数时遇到了困难。inspect模块在这种情况下也没有提供任何帮助。如果有任何建议,那就太好了。

1 个回答

8

.args 是用来存放传给部分函数的参数。如果你想知道原始函数需要哪些参数,可以使用你在 .func 属性上提到的 inspect 方法。

你可以通过对一个 functools.partial 对象使用 dir 来查看这些信息:

>>> dir(x)
['__call__', '__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'args', 'func', 'keywords']

撰写回答