What is more efficient?

placid Bulkan at gmail.com
Mon Feb 19 01:03:41 EST 2007


On Feb 19, 4:38 pm, Gary Herron <gher... at digipen.edu> wrote:
> Karlo Lozovina wrote:
> > Let's say I have a class with few string properties and few integers, and
> > a lot of methods defined for that class.
>
> > Now if I have hundreds of thousands (or even more) of instances of that
> > class - is it more efficient to remove those methods and make them
> > separate functions, or it doesn't matter?
>
> > Thanks...
>
> It is not noticeably more or less efficient in either memory or
> execution speed.

well lucky i wont be designing/creating a new language!

>
> Both method and function code is compiled and stored once in either the
> class name space (for the method) or the module name space (for the
> function), and the lookup of either one is a single lookup in the
> appropriate name space.
>
> Actually the method lookup requires one extra step: First look for the
> method in the instance (which fails) and then look for it in the class
> (which succeeds). But that extra look up is highly optimized and
> probably not noticeable. The number of methods/functions may slow things
> up, but it will affect either name space equally.
>
> Gary Herron





More information about the Python-list mailing list