returning a list: IndexError
Steven Bethard
steven.bethard at gmail.com
Thu Mar 31 12:20:00 EST 2005
shama.bell at gmail.com wrote:
> Thats right. I wanted c1 and c2 to retrieve the values returned by t1
> and t2 . Values for t1 and t2 could be anything. Also tbl is global.
Then you need to return t1 and t2 in test, e.g.:
py> import numarray as na
py> tbl = na.zeros((32, 16))
py> def test():
... t1 = 0x0
... t2 = 0x1
... return t1, t2, tbl[t1, t2]
...
py> def get_value():
... c1, c2, data = test()
... print tbl[c1, c2]
...
py> get_value()
0
Just as an element of any other container doesn't know what index it's
stored at, values in a numarray array don't either. If you want to deal
with indices, you need to either pass them around instead (or in
addition to) the values, or you need to search the whole array each time
for similar objects and see what indices they're at. The first approach
is probably preferred in most cases.
STeVe
More information about the Python-list
mailing list