On Apr 11, 11:27 pm, Steven Bethard <[EMAIL PROTECTED]> wrote: > Drew wrote: > > I recently saw this website:http://www.norvig.com/spell-correct.html > > > All the code makes sense to me save one line: > > > def known_edits2(word): > > return set(e2 for e1 in edits1(word) for e2 in edits1(e1) if e2 in > > NWORDS) > > This is the same as: > > result = set() > for e1 in edits1(word): > for e2 in edits1(e1): > if e2 in NWORDS: > result.add(e2) > return result > > The thing between the ``set(`` and ``)`` is called a generator > comprehension if you'd like to look into it further. > > STeVe
Steve - Thanks for the response. I'm somewhat familiar with generator/list comprehension but was unsure how multiple statements were evaluated when chained together. From your explanation, I'm assuming they are evaluated from the "inside out" rather than left to right or right to left. Does the mean that the comprehension on the inside is always evaluated first? Thanks, Drew -- http://mail.python.org/mailman/listinfo/python-list