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


Groups > comp.lang.python > #31079

Re: Private methods

From Roy Smith <roy@panix.com>
Newsgroups comp.lang.python
Subject Re: Private methods
Date 2012-10-10 09:08 -0400
Organization PANIX Public Access Internet and UNIX, NYC
Message-ID <roy-48CB5E.09080510102012@news.panix.com> (permalink)
References <1krpbz9.1wge3j11123k2vN%real-not-anti-spam-address@apple-juice.co.uk> <mailman.1994.1349790529.27098.python-list@python.org> <1krpdak.u0qy9e1a4knspN%real-not-anti-spam-address@apple-juice.co.uk>

Show all headers | View raw


In article 
<1krpdak.u0qy9e1a4knspN%real-not-anti-spam-address@apple-juice.co.uk>,
 real-not-anti-spam-address@apple-juice.co.uk (D.M. Procida) wrote:

> Mark Lawrence <breamoreboy@yahoo.co.uk> wrote:
> 
> > On 09/10/2012 14:24, D.M. Procida wrote:
> > > What exactly is the point of a private method? Why or when would I want
> > > to use one?
> > >
> > > Daniele
> > >
> > 
> > Hardly a Python question but using a search engine could have got you
> > here, and rather faster :) 
> >
> http://stackoverflow.com/questions/2620699/why-private-methods-in-the-ob
> ject-oriented
> 
> Thanks. Sometimes I prefer to talk to real people on Usenet than do web
> searches. Just my preference.
> 
> Anyway, one of the answers on that page explains that public methods are
> interfaces to a class, that other things might rely on, and private ones
> are for its own internal logic, that other things don't need to care
> about.
> 
> In Python, using an underscore is simply a convention to note that a
> method is private - it doesn't actually hide it from other things -
> correct?

Yes (modulo some details of how import works that I've never fully 
figured out and which lack of knowledge hasn't seemed to have hurt me 
any).

I view public and private in Python this way:

Public: I hereby declare that this method or attribute is part of the 
promised never to change interface of this class.  I might possibly 
break that promise at some point in the future, but if I do, you have 
the right to bitch and whine about it, and I'm morally obligated to at 
least pretend I care.

Private: I hereby declare that this method or attribute is something I 
needed to have for my own purposes, and is officially hidden inside my 
kimono.  Like all things inside my kimono, you may speculate about their 
existence all you want, but you touch them at your own peril.  I may 
change them at some point in the future, and while you can bitch and 
whine about it all you want, I'm not listening.

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


Thread

Private methods real-not-anti-spam-address@apple-juice.co.uk (D.M. Procida) - 2012-10-09 14:24 +0100
  Re: Private methods Mark Lawrence <breamoreboy@yahoo.co.uk> - 2012-10-09 14:51 +0100
    Re: Private methods real-not-anti-spam-address@apple-juice.co.uk (D.M. Procida) - 2012-10-09 14:59 +0100
      Re: Private methods Demian Brecht <demianbrecht@gmail.com> - 2012-10-09 07:08 -0700
      Re: Private methods Robert Kern <robert.kern@gmail.com> - 2012-10-09 15:12 +0100
      Re: Private methods Tim Chase <python.list@tim.thechases.com> - 2012-10-09 09:21 -0500
      Re: Private methods Ian Kelly <ian.g.kelly@gmail.com> - 2012-10-09 11:08 -0600
        Re: Private methods Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2012-10-09 23:51 +0000
          Re: Private methods Demian Brecht <demianbrecht@gmail.com> - 2012-10-09 17:26 -0700
            Re: Private methods real-not-anti-spam-address@apple-juice.co.uk (D.M. Procida) - 2012-10-10 08:03 +0100
              Re: Private methods alex23 <wuwei23@gmail.com> - 2012-10-10 18:34 -0700
                Re: Private methods Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2012-10-11 02:08 +0000
                Re: Private methods Dieter Maurer <dieter@handshake.de> - 2012-10-11 08:04 +0200
          Re: Private methods Robert Kern <robert.kern@gmail.com> - 2012-10-10 13:47 +0100
          Re: Private methods Ian Kelly <ian.g.kelly@gmail.com> - 2012-11-01 16:45 -0600
      Re: Private methods Roy Smith <roy@panix.com> - 2012-10-10 09:08 -0400
        Re: Private methods Ramchandra Apte <maniandram01@gmail.com> - 2012-10-10 08:56 -0700
          Re: Private methods Mark Lawrence <breamoreboy@yahoo.co.uk> - 2012-10-10 17:13 +0100
            Re: Private methods Grant Edwards <invalid@invalid.invalid> - 2012-10-10 16:30 +0000
            Re: Private methods alex23 <wuwei23@gmail.com> - 2012-10-10 18:39 -0700
  Re: Private methods 88888 Dihedral <dihedral88888@googlemail.com> - 2012-10-10 20:11 -0700

csiph-web