pythonlist

Python: finding an element in a list


What is a good way to find the index of an element in a list in Python?
Note that the list may not be sorted.

Is there a way to specify what comparison operator to use?


Solution

  • The best way is probably to use the list method .index.

    For the objects in the list, you can do something like:

    def __eq__(self, other):
        return self.Value == other.Value
    

    with any special processing you need.

    You can also use a for/in statement with enumerate(arr)

    Example of finding the index of an item that has value > 100.

    for index, item in enumerate(arr):
        if item > 100:
            return index, item
    

    Source