A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mail.python.org/pipermail/python-dev/2003-October/039153.html below:

[Python-Dev] Re: listcomps vs. for loops

[Python-Dev] Re: listcomps vs. for loopsGuido van Rossum guido at python.org
Tue Oct 21 12:58:23 EDT 2003
> > > I don't recall what I said then.  Did I say it was a feature that
> > >
> > >   L = [x for x in R]
> > >   print x
> > >
> > > would print the last item of R?
> 
> Someone more-or-less did -- in the tutorial.  See bottom below.

Oh bah!

> > A problem with such code irrespective of anything else is that it
> > fails when R is empty.
> 
> Same would be true of for loops, except that typical after-for usage,
> such as searching for item in list, has else clause to set control
> variable to default in 'not found' cases, which include empty lists.

The regular for loop won't change.

> The Ref Manual currently says nothing about leakage or overwriting.
> That should make leakage fair game for plugging.

Unfortunately the Ref Manual is notoriously incomplete.

> On the other hand, Tutorial 5.1.4 List Comprehensions says:
> '''
> To make list comprehensions match the behavior of for loops,
> assignments to the loop variable remain visible outside of the
> comprehension:
> 
> >>> x = 100                     # this gets overwritten
> >>> [x**3 for x in range(5)]
> [0, 1, 8, 27, 64]
> >>> x                           # the final value for range(5)
> 4
> '''
> (Pointed out by John Roth in response to my c.l.py posting.)
> I have added note to SF 827209.

Sigh.  What a bummer to put this in a tutorial. :-(

But it won't stop me from deprecating the feature.

--Guido van Rossum (home page: http://www.python.org/~guido/)

More information about the Python-Dev mailing list

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4