I was looking for a function or method that would return the index to the first matching element in a list. Coming from a C++ STL background, I thought it might be called "find". My first stop was the Sequence Types page of the Library Reference (http://docs.python.org/lib/typesseq.html); it wasn't there. A search of the Library Reference's index seemed to confirm that the function did not exist. A little later I realized it might be called "index" instead. Voila.
My point is that the docs list and describe it as a method that only exists for MUTABLE sequences. Why only for mutables? The class of objects I would expect it to cover would be all ordered sequences, or, to phrase it a little more pointedly, anything that supports ordered INDEXing. My understanding is that dict's don't fall into that class of objects since their ordering is not documented or to be depended on. However, tuple's do support ordered indexing, so why don't tuple's have an index method? P.S.: I know I haven't yet gotten an answer to my "why" question yet, but, assuming it's just an oversight or an example of design without the big picture in mind, an added benefit to fixing that oversight would be that the "index" method's documentation could be moved from the currently odd seeming location on the "Mutable Sequence Types" page to a place someone would look for it logically. P.P.S.: As much as the elementary nature of my question would make it seem, this isn't my first day using Python. I've used it on and off for several years and I LOVE Python. It is only because of my love for the language that I question its ways, so please don't be overly defensive when I guess that the cause for this possible oversight is a lack of design. Corey Lubin -- http://mail.python.org/mailman/listinfo/python-list