Rasmus Fogh wrote:
Rhamphoryncus wrote:
You grossly overvalue using the "in" operator on lists.

Maybe. But there is more to it than just 'in'. If you do:
c = numpy.zeros((2,))
ll = [1, c, 3.]
then the following all throw errors:
3 in ll, 3 not in ll, ll.index(3), ll.count(3), ll.remove(3)
c in ll, c not in ll, ll.index(c), ll.count(c), ll.remove(c)

Note how the presence of c in the list makes it behave wrong for 3 as
well.

So do not put numpy arrays into lists without wrapping them. They were designed and semi-optimized, by a separate community, for a specific purpose -- numerical computation -- and not for 'playing nice' with other Python objects.

It is a design feature of Python that people can implement specialized objects with specialized behaviors for specialized purposes.

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to