Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #106617
| From | Ian Kelly <ian.g.kelly@gmail.com> |
|---|---|
| Newsgroups | comp.lang.python |
| Subject | Re: Promoting Python |
| Date | 2016-04-07 00:56 -0600 |
| Message-ID | <mailman.3.1460012220.2253.python-list@python.org> (permalink) |
| References | (17 earlier) <87wpoaiedl.fsf@elektro.pacujo.net> <57059E6D.8070105@roce.be> <mailman.56.1459992022.1197.python-list@python.org> <87r3eihqvx.fsf@elektro.pacujo.net> <CALwzidmk0-v5b1-DQ-D2bwebzrHng3bYWBBUTobXrNM6-oOOsw@mail.gmail.com> |
On Thu, Apr 7, 2016 at 12:30 AM, Marko Rauhamaa <marko@pacujo.net> wrote:
> Or:
>
> When a class attribute reference (for class C, say) would yield a
> class method object, it is transformed into an instance method object
> whose __self__ attributes is C.
> <URL: https://docs.python.org/3/reference/datamodel.html?highlight=__g
> etattr__#the-standard-type-hierarchy>
>
> So the only difference between a regular function and an instance method
> object is the fact that the latter has a __self__ attribute set.
>
> Although even that small difference can be paved over:
>
> def g():
> print("g")
> g.__self__ = a
> a.f = g
What is this example supposed to accomplish? Functions don't merely
not have a __self__ attribute set. The __self__ attribute has no
meaning on a function.
Let's take a different example.
class Dialog(Window):
def __init__(self, parent, title, ok_callback):
super().__init__(parent, title)
self._ok_callback = ok_callback
self._ok_button = Button(self, 'Ok')
self._ok_button.bind(self._ok_callback)
def f(event):
print("Hello world")
dialog = Dialog(None, "Example", f)
dialog.show()
Are you suggesting that dialog._ok_callback should be considered a
method of Dialog, despite the fact that the implementation of Dialog
and the implementation of f are entirely unrelated? If so, then I
think that most OOP practitioners would disagree with you.
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Promoting Python "Gordon( Hotmail )" <sionet3344@hotmail.co.uk> - 2016-04-05 06:48 +0100
Re: Promoting Python Rustom Mody <rustompmody@gmail.com> - 2016-04-05 00:31 -0700
Re: Promoting Python Joel Goldstick <joel.goldstick@gmail.com> - 2016-04-05 08:06 -0400
Re: Promoting Python alister <alister.ware@ntlworld.com> - 2016-04-05 18:02 +0000
Re: Promoting Python BartC <bc@freeuk.com> - 2016-04-05 19:47 +0100
Re: Promoting Python alister <alister.ware@ntlworld.com> - 2016-04-05 19:38 +0000
Re: Promoting Python Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-04-05 08:13 -0400
Re: Promoting Python Marko Rauhamaa <marko@pacujo.net> - 2016-04-05 15:31 +0300
Re: Promoting Python Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2016-04-06 20:52 +1200
Re: Promoting Python Marko Rauhamaa <marko@pacujo.net> - 2016-04-06 12:12 +0300
Re: Promoting Python BartC <bc@freeuk.com> - 2016-04-06 12:06 +0100
Re: Promoting Python Ned Batchelder <ned@nedbatchelder.com> - 2016-04-06 04:38 -0700
Re: Promoting Python BartC <bc@freeuk.com> - 2016-04-06 14:21 +0100
Re: Promoting Python Marko Rauhamaa <marko@pacujo.net> - 2016-04-06 14:46 +0300
Re: Promoting Python Michael Selik <michael.selik@gmail.com> - 2016-04-06 13:33 +0000
Re: Promoting Python Marko Rauhamaa <marko@pacujo.net> - 2016-04-06 17:14 +0300
Re: Promoting Python Chris Angelico <rosuav@gmail.com> - 2016-04-07 00:20 +1000
Re: Promoting Python Marko Rauhamaa <marko@pacujo.net> - 2016-04-06 21:23 +0300
Re: Promoting Python Marko Rauhamaa <marko@pacujo.net> - 2016-04-06 21:50 +0300
Re: Promoting Python Marko Rauhamaa <marko@pacujo.net> - 2016-04-06 22:30 +0300
Re: Promoting Python Marko Rauhamaa <marko@pacujo.net> - 2016-04-06 22:22 +0300
Re: Promoting Python Marko Rauhamaa <marko@pacujo.net> - 2016-04-06 22:59 +0300
Re: Promoting Python Marko Rauhamaa <marko@pacujo.net> - 2016-04-06 23:39 +0300
Re: Promoting Python Marko Rauhamaa <marko@pacujo.net> - 2016-04-07 01:03 +0300
Re: Promoting Python Marko Rauhamaa <marko@pacujo.net> - 2016-04-07 09:30 +0300
Re: Promoting Python Ian Kelly <ian.g.kelly@gmail.com> - 2016-04-07 00:56 -0600
Re: Promoting Python Marko Rauhamaa <marko@pacujo.net> - 2016-04-07 10:19 +0300
Re: Promoting Python Steven D'Aprano <steve@pearwood.info> - 2016-04-08 16:09 +1000
Re: Promoting Python Marko Rauhamaa <marko@pacujo.net> - 2016-04-06 23:05 +0300
Re: Promoting Python BartC <bc@freeuk.com> - 2016-04-06 14:54 +0100
Re: Promoting Python Marko Rauhamaa <marko@pacujo.net> - 2016-04-06 17:08 +0300
Re: Promoting Python Larry Martell <larry.martell@gmail.com> - 2016-04-06 10:36 -0400
Re: Promoting Python Chris Angelico <rosuav@gmail.com> - 2016-04-07 00:14 +1000
Re: Promoting Python Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-04-06 15:20 +0100
Re: Promoting Python Ned Batchelder <ned@nedbatchelder.com> - 2016-04-06 07:34 -0700
Re: Promoting Python Ned Batchelder <ned@nedbatchelder.com> - 2016-04-06 10:55 -0700
Re: Promoting Python BartC <bc@freeuk.com> - 2016-04-06 23:24 +0100
Re: Promoting Python BartC <bc@freeuk.com> - 2016-04-06 18:04 +0100
Re: Promoting Python Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-04-06 08:04 -0400
Re: Promoting Python Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-04-06 13:39 +0100
Re: Promoting Python Steven D'Aprano <steve@pearwood.info> - 2016-04-07 03:40 +1000
csiph-web