Can't get around "IndexError: list index out of range"
Fredrik Lundh
fredrik at pythonware.com
Tue Oct 10 12:22:47 EDT 2006
MonkeeSage wrote:
> In Libs/site.py, lines 302-306:
>
> try:
> for i in range(lineno, lineno + self.MAXLINES):
> print self.__lines[i]
> except IndexError:
> break
>
> With my proposal, that could be written as:
>
> for i in range(lineno, lineno + self.MAXLINES):
> if self.__lines.has_index(i):
> print self.__lines[i]
> else:
> break
>
> Granted, in this particular case the amount of code is not reduced, but
> (and I would hope you'd agree) the control flow is certainly easier to
> follow.
so to "improve" a piece of code that's been optimized for the common
case, you're adding an extra method call and a test to the inner loop?
and this because you think Python programmers don't understand try-
except statements ?
I think we can all safely ignore you now.
</F>
More information about the Python-list
mailing list