On Mon, Jan 19, 2009 at 9:10 AM, Gerald Britton <gerald.brit...@gmail.com>wrote:
> g = (n for n in range(100) if n*n < 50) > > would yield 0, 1, 2, 3, 4, 5, 6 and 7, but would also consider > the numbers from 8 to 99 and reject them all since n*n >= 50 for > numbers in that range. Allowing for a "while" clause would allow > the redundant tests to be short-circuited: > Instead of using a "while" clause, the above example could simply be rewritten: g = (n for n in range(8)) I appreciate that this is a toy example to illustrate the syntax. Do you have some slightly more complex examples, that could not be rewritten by altering the "in" clause? -- Daniel Stutzbach, Ph.D. President, Stutzbach Enterprises, LLC <http://stutzbachenterprises.com>
_______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com