On 23/02/17 23:00, Deborah Swanson wrote:
It looks to me like you are indexing into a single-element
list that you
are creating using the literal list syntax in the middle of
the expression.

Actually, group is essentially a 2-element list. Each group has a list
of rows, and each row has a set of fields. group has to be indexed by
row index and field index. (This is a namedtuple configuration.)

The weirdness is that

group[0][4]

gets the right answer, but

group[[idx][records_idx[label]]],
where idx = 0 and records_idx[label]] = 4

gets the IndexError.

So remove the outermost square brackets then so the two expressions are the same (what I - and also Steven - mentioned is correct: you are creating a single-element list and indexing it (and then using the result of that, should it work, to index 'group')).

The same thing as "group[0][4]" in your example is:

group[idx][records_idx[label]]

(assuming you have all those things correct - I haven't studied your code in a lot of detail).

Your new example expressed using the original construct you posted is:

group[[0][4]]

... see the extra enclosing square brackets?

E.
--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to