我有一组用Python编写的函数,这些函数共同接收两个参数以及其他参数。
def myMethodA (param1, param2, specificParm)
do code
def myMethodB (param1, param2, specificParm1 specificParam2)
do code
我想创建一个装饰器,以代替调用函数时需要使用前两个参数的需求,通过在调用函数之前推送参数来实现:
@withParams()
def myMethodA (specificParam)
do code
但是如果我省略这些参数,装饰器就不能调用它了,如果我保留它们,那么调用者也需要指定它们。有没有什么方法可以解决这个问题? 我可以在args*中做一些事情,但仍然要为specificParam指定命名参数吗?另外,如何在myMethodA内引用param1和param2?
functools.partial
- Markus Meskanen