Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #75662

Re: how to call back a method in python3?

From Marko Rauhamaa <marko@pacujo.net>
Newsgroups comp.lang.python
Subject Re: how to call back a method in python3?
Date 2014-08-04 08:47 +0300
Organization A noiseless patient Spider
Message-ID <87y4v4kdqk.fsf@elektro.pacujo.net> (permalink)
References <mailman.12616.1407121329.18130.python-list@python.org>

Show all headers | View raw


"水静流深" <1248283536@qq.com>:

> I want to call back a function which is the method of a class .
>
>     def callback(self.do,x):
>         return(self.do(x))
>
> That is what i want to write,when i input 
>      
>     def callback(self.do,x):
>
> error message:

Do this:

    class MyClass:
        def my_method(self):
            def callback(x):
                return self.do(x)
            return callback

        def do(self, x):
            print("done: {}".format(x))

then call:

    m = MyClass()
    callback = m.my_method()
    callback(7)


Marko

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

how to call back  a method in python3? "水静流深" <1248283536@qq.com> - 2014-08-04 09:56 +0800
  Re: how to call back  a method in python3? Marko Rauhamaa <marko@pacujo.net> - 2014-08-04 08:47 +0300
    Re: how to call back  a method in python3? Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2014-08-04 18:18 +1200

csiph-web