How to bind a constant parameter in Python?

后端 未结 2 1114
情深已故
情深已故 2021-01-23 07:47

I have got a class similar to

class C:
    def __init__(self, a):
        self.a = a
    def noParam(self):
        return self.a
    def withParam(self, b)
            


        
2条回答
  •  温柔的废话
    2021-01-23 08:07

    You want to use functools.partial:

    import functools
    
    instC = C(5.)
    meth = functools.partial(instC.withParam, 239)
    

    Then you can pass this method (bound with both your instance and the value 239):

    do_thing(meth)
    

提交回复
热议问题