Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #45016

Re: Append to python List

Newsgroups comp.lang.python
Date 2013-05-09 01:18 -0700
References <71427882-d2c6-4066-b1e2-624b12a42a0d@googlegroups.com> <mailman.1485.1368082909.3114.python-list@python.org>
Message-ID <b8608b36-95f6-40df-a172-b179cb5fd8ee@googlegroups.com> (permalink)
Subject Re: Append to python List
From RAHUL RAJ <omrahulrajcse@gmail.com>

Show all headers | View raw


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!

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Append to python List RAHUL RAJ <omrahulrajcse@gmail.com> - 2013-05-08 23:36 -0700
  Re: Append to python List Jussi Piitulainen <jpiitula@ling.helsinki.fi> - 2013-05-09 09:55 +0300
    Re: Append to python List 88888 Dihedral <dihedral88888@googlemail.com> - 2013-05-09 04:24 -0700
      Re: Append to python List Jussi Piitulainen <jpiitula@ling.helsinki.fi> - 2013-05-09 14:30 +0300
        Re: Append to python List 88888 Dihedral <dihedral88888@googlemail.com> - 2013-05-10 02:51 -0700
        Re: Append to python List Chris Angelico <rosuav@gmail.com> - 2013-05-09 21:49 +1000
          Re: Append to python List Anssi Saari <as@sci.fi> - 2013-05-11 18:47 +0300
            Re: Append to python List Chris Angelico <rosuav@gmail.com> - 2013-05-12 02:00 +1000
              Re: Append to python List 88888 Dihedral <dihedral88888@googlemail.com> - 2013-05-11 19:29 -0700
                Re: Append to python List Chris Angelico <rosuav@gmail.com> - 2013-05-12 12:40 +1000
          Re: Append to python List Jussi Piitulainen <jpiitula@ling.helsinki.fi> - 2013-05-12 09:02 +0300
  Re: Append to python List Chris Angelico <rosuav@gmail.com> - 2013-05-09 16:52 +1000
  Re: Append to python List Gary Herron <gary.herron@islandtraining.com> - 2013-05-08 23:54 -0700
    Re: Append to python List RAHUL RAJ <omrahulrajcse@gmail.com> - 2013-05-09 01:18 -0700
      Re: Append to python List RAHUL RAJ <omrahulrajcse@gmail.com> - 2013-05-09 01:19 -0700
      Re: Append to python List Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-05-09 11:14 +0000

csiph-web