List comprehensions: Difference between revisions
Content added Content deleted
(→{{header|Python}}: changed from 21 to n and added generator function example) |
(→{{header|Python}}: colourized.) |
||
Line 61: | Line 61: | ||
List comprehension: |
List comprehension: |
||
[(x,y,z) for x in xrange(1,n+1) for y in xrange(x,n+1) for z in xrange(y,n+1) if x**2 + y**2 == z**2] |
<python>[(x,y,z) for x in xrange(1,n+1) for y in xrange(x,n+1) for z in xrange(y,n+1) if x**2 + y**2 == z**2]</python> |
||
Generator comprehension: |
Generator comprehension: |
||
((x,y,z) for x in xrange(1,n+1) for y in xrange(x,n+1) for z in xrange(y,n+1) if x**2 + y**2 == z**2) |
<python>((x,y,z) for x in xrange(1,n+1) for y in xrange(x,n+1) for z in xrange(y,n+1) if x**2 + y**2 == z**2)</python> |
||
Generator function: |
Generator function: |
||
def gentriples(n): |
<python>def gentriples(n): |
||
for x in xrange(1,n+1): |
for x in xrange(1,n+1): |
||
for y in xrange(x,n+1): |
for y in xrange(x,n+1): |
||
for z in xrange(y,n+1): |
for z in xrange(y,n+1): |
||
if x**2 + y**2 == z**2: |
if x**2 + y**2 == z**2: |
||
yield (x,y,z) |
yield (x,y,z)</python> |