I'm getting same output for both code parts, why not for th code parts in question?
On Thursday, May 9, 2013 1:48:51 PM UTC+5:30, RAHUL RAJ wrote: > Then what about this code part? > > > > [(x, y) for x in [1,2,3] for y in [3,1,4] if x != y] > > > > and the following code part: > > > > for x in [1,2,3]: > > for y in [3,1,4]: > > if x != y: > > combs.append((x, y)) > > > > > > On Thursday, May 9, 2013 12:24:24 PM UTC+5:30, Gary Herron wrote: > > > On 05/08/2013 11:36 PM, RAHUL RAJ wrote: > > > > > > > Checkout the following code: > > > > > > > > > > > > > > sample2 = [x+y for x in range(1,10) for y in range(1,10) if x!=y] > > > > > > > output=[] > > > > > > > > > > > > > > > > > output=[x for x in sample2 if x not in output] > > > > > > This statement is not doing what you expect. It is not building a list > > > > > > in the variable named output, it is building a list (anonymously) then > > > > > > binding it to the variable output once it's built. Therefore output is > > > > > > [] for the whole list building operation. > > > > > > > > > > > > The later operation works, because your *are* building the list in place > > > > > > as you go. > > > > > > > > > > > > > > > > > > > > the output I get is > > > > > > > 3 4 5 6 7 8 9 10 3 5 6 7 8 9 10 11 4 5 7 8 9 10 11 12 5 6 7 9 10 11 12 13 > > > 6 7 8 9 11 12 13 14 7 8 9 10 11 13 14 15 8 9 10 11 12 13 15 16 9 10 11 12 > > > 13 14 15 17 10 11 12 13 14 15 16 17 > > > > > > > > > > > > > > which contains duplicate values. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > But if I do like this: > > > > > > > > > > > > > > sample2 = [x+y for x in range(1,10) for y in range(1,10) if x!=y] > > > > > > > output=[] > > > > > > > for x in sample2: > > > > > > > if x not in output: > > > > > > > output.append(x) > > > > > > > > > > > > > > > > > > > > > the value of 'output' I get like this: > > > > > > > 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 > > > > > > > > > > > > > > I know that both the programs have the same functionality, but why do I > > > have different outputs? > > > > > > > > > > > > > > Please help! -- http://mail.python.org/mailman/listinfo/python-list