I have created a 2 dimension array like:
rows =3 columns= 2 mylist = [[0 for x in range(columns)] for x in range(rows)] for i in range(rows): for j in range(columns): mylist[i][j] = '%s,%s'%(i,j) print mylist
Printing this list gives an output:
[ ['0,0', '0,1'], ['1,0', '1,1'], ['2,0', '2,1'] ]
where each list item is a string of the format 'row,column'
Now given this list, i want to iterate through it in the order:
'0,0' '1,0' '2,0' '0,1' '1,1' '2,1'
that is iterate through 1st column then 2nd column and so on. How do i do it with a loop ?
This Question pertains to pure python list while the question which is marked as same pertains to numpy arrays. They are clearly different
itertools.chain. Something like:
>>> from itertools import chain >>> l = chain.from_iterable(zip(*l)) <itertools.chain object at 0x104612610> >>> list(l) ['0,0', '1,0', '2,0', '0,1', '1,1', '2,1']
same way you did the fill in, but reverse the indexes:
>>> for j in range(columns): ... for i in range(rows): ... print mylist[i][j], ... 0,0 1,0 2,0 0,1 1,1 2,1 >>>