Index Error
inshu chauhan
insideshoes at gmail.com
Wed Nov 21 11:15:56 CET 2012
> >
> > def GenerateRing(x,y, N): Generates square rings around a point in data
> which has 300 columns(x) and 3000
> > rows(y)
> > indices = []
> > for i in xrange(-N, N):
> > indices.append((x+i, y-N))
> > indices.append((x+N, y+i))
> > indices.append((x-i, y+N))
> > indices.append((x-N, y-i))
> > return indices
>
> No, this creates a one dimensional list with 2N elements of where each
> element is a two item tuple.
>
> Yes, in programme it returns a list of tuples but pysically it is creating
a ring .
>
> I need help in this part as I am
> > unable to device a method in which if the points are out of index,it
> should stop and
> > if idx[0] >= 300 and idx[1] >= 3000:
> go to next centre and start generating
> > rings from there.. and again if the index is out of range .. this should
> repeat
> > continue
> > else :
> > point = data[idx[0], idx[1]]
>
> You can use a few different methods. This is just one example.
>
> for idx, temp_point in enumerate(new_indices):
> try:
> temp_point[0]
> temp_point[1]
> except Exception: #Should be IndexError I think.
> print 'idx: {0}\ntemp_point:{1}'.format(idx, temp_point)
> # Possibly add a break or exit so you do not have to
> # keep going once you hit a failure.
> point = data[temp_point[0], temp_point[1]]
>
>
>
Thank you for the suggestion.
> What is `data`? I have not seen any built-in structure that takes
> a tuple in this manner...unless it is a dictionary. Or from numpy.
> Given my lack of knowledge of what `data`, it could be the
> problem is there. That is one reason I accessed `temp_point[0]` and
> `temp_point[1]` separately.
>
Data is an image.
>
>
> >
> > Traceback (most recent call last):
> > File "Z:/modules/Classify.py", line 73, in <module>
> > ComputeClasses(data)
> > File "Z:/modules/Classify.py", line 49, in ComputeClasses
> > point = data[idx[0], idx[1]]
> > error: index is out of range
> >
>
> Is that the actual error? If so, then the problem is not `idx` or
> `temp_point` but instead `data`. If it is not the exact error, please
> copy and paste the error message *exactly* as given.
>
Sorry but this is the actual error .
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20121121/bb91507b/attachment.html>
More information about the Python-list
mailing list