[Tutor] Old School
Kent Johnson
kent37 at tds.net
Fri Apr 11 15:43:20 CEST 2008
Dinesh B Vadhia wrote:
> I belong to the Old School where getting my head around OO is just one
> big pain. I write software by modularization executed as a set of
> functions - and it works (some call this functional programming!).
> Whenever I review Python books (eg. Lutz's excellent Programming Python,
> 3ed) the code is laid out with Def's followed by Classes (with their own
> Def's) which is as it should be. But, the Def's on their own (ie. not
> in Classes) are all of the form:
>
> > def abc(self):
> <do something>
> return <return list>
>
> or,
>
> > def xyz(self, <parameter list>):
> <do something>
> return <return list>
>
> I don't use 'self' in my def's - should I? If so, why?
No. self is the first argument to a method - a function that is part of
a class. That is the only place it should be used.
My guess is that you are seeing defs for methods that are presented out
of context. In general it doesn't make sense (and would not work
correctly) to add an extra self parameter to standalone functions.
Kent
More information about the Tutor
mailing list