[Tutor] List elements as indices to another list
Carlos Laviola
carlos.laviola at gmail.com
Mon Aug 4 01:12:52 CEST 2008
Hi,
I have a simple "matrix" (nested list) defined as such:
M = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
I'm trying to come up with a different way of getting its, well,
"reverse antidiagonal", since the actual antidiagonal of M goes from
M[0, N] to M[N, 0] according to
http://planetmath.org/encyclopedia/AntiDiagonalMatrix.html:
j = 0
for i in range(len(M)-1, -1, -1):
print M[i][j]
j += 1
This works fine, but I was looking for a different solution, just for
kicks, and came across something interesting. I can do:
>>> i, j = range(len(M)), range(len(M)-1, -1, -1)
>>> i
[0, 1, 2]
>>> j
[2, 1, 0]
Theoretically, I could then just iterate over range(len(M)) and grab
M[i[N]j[N]], but that's not legal. What would be the right way of doing
this?
Thanks in advance,
Carlos
More information about the Tutor
mailing list