Re: iterating over two arrays in parallel?

2008-08-29 Thread Terry Reedy



[EMAIL PROTECTED] wrote:

I want to interate over two arrays in parallel, something like this:

a=[1,2,3]
b=[4,5,6]

for i,j in a,b:
print i,j

where i,j would be 1,4,2,5,   3,6  etc.

Is this possible?


How to fish for yourself:
search 'Python loop two arrays parallel' and second hit with Google is
http://docs.python.org/tut/node7.html
which has this entry
To loop over two or more sequences at the same time, the entries can be 
paired with the zip() function.


 questions = ['name', 'quest', 'favorite color']
 answers = ['lancelot', 'the holy grail', 'blue']
 for q, a in zip(questions, answers):
... print 'What is your %s?  It is %s.' % (q, a)
... 
What is your name?  It is lancelot.
What is your quest?  It is the holy grail.
What is your favorite color?  It is blue.


Or go to the Tutorial directly, expand the chapter headings, and notice 
that 5. Data Structures has section 5.6 Looping Techniques.


Indeed, I recommend that you read thru at least the first 9 chapters.

tjr

--
http://mail.python.org/mailman/listinfo/python-list


Re: iterating over two arrays in parallel?

2008-08-29 Thread Cousin Stanley

 I want to interate over two arrays in parallel, 
 something like this:

 a=[1,2,3]
 b=[4,5,6]

 for i,j in a,b:
 print i,j

 where i,j would be 1,4,2,5,   3,6  etc.

 Is this possible?

 Many TIA!
 Mark


 list_1 = range( 1 , 4 )
 list_2 = range( 4 , 7 )

 list12 = zip( list_1 , list_2 )

 for this in list12 :
... print '   ' , this
...
(1, 4)
(2, 5)
(3, 6)

 for i , j in list12 :
... print '   ' , i , j
...
1 4
2 5
3 6


-- 
Stanley C. Kitching
Human Being
Phoenix, Arizona

--
http://mail.python.org/mailman/listinfo/python-list


iterating over two arrays in parallel?

2008-08-28 Thread mh
I want to interate over two arrays in parallel, something like this:

a=[1,2,3]
b=[4,5,6]

for i,j in a,b:
print i,j

where i,j would be 1,4,2,5,   3,6  etc.

Is this possible?

Many TIA!
Mark

-- 
Mark Harrison
Pixar Animation Studios
--
http://mail.python.org/mailman/listinfo/python-list


Re: iterating over two arrays in parallel?

2008-08-28 Thread skip
 mark == mh  [EMAIL PROTECTED] writes:

mark I want to interate over two arrays in parallel, something like this:
mark a=[1,2,3]
mark b=[4,5,6]

mark for i,j in a,b:
mark print i,j

mark where i,j would be 1,4,2,5,   3,6  etc.

a = [1,2,3]
b = [4,5,6]
for (i,j) in zip(a,b):
  print i, j

To avoid recreating the entire list you can substitute itertools.izip for
zip.

Skip

--
http://mail.python.org/mailman/listinfo/python-list


Re: iterating over two arrays in parallel?

2008-08-28 Thread Luis Zarrabeitia

Quoting [EMAIL PROTECTED]:

 I want to interate over two arrays in parallel, something like this:
 
 a=[1,2,3]
 b=[4,5,6]
 
 for i,j in a,b:
 print i,j
 
 where i,j would be 1,4,2,5,   3,6  etc.
 
 Is this possible?

Yeap.

===
for i,j in zip(a,b):
print i,j
===

Or better yet (memory wise at least)

===
from itertools import izip

for i,j in izip(a,b):
print i,j
===

(zip creates a list with the pairs (i,j), izip returns an iterator over the
pairs i,j)

 -- 
 Mark Harrison
 Pixar Animation Studios

Are you really from Pixar? Cool

Cheers,

-- 
Luis Zarrabeitia
Facultad de Matemática y Computación, UH
http://profesores.matcom.uh.cu/~kyrie

--
http://mail.python.org/mailman/listinfo/python-list