¿Usa el método list index () de Python en una lista de tuplas u objetos?
l tipo de lista de @ Python tiene un método index () que toma un parámetro y devuelve el índice del primer elemento de la lista que coincide con el parámetro. Por ejemplo
>>> some_list = ["apple", "pear", "banana", "grape"]
>>> some_list.index("pear")
1
>>> some_list.index("grape")
3
¿Existe una manera elegante (idiomática) de extender esto a listas de objetos complejos, como tuplas? Idealmente, me gustaría poder hacer algo como esto:
>>> tuple_list = [("pineapple", 5), ("cherry", 7), ("kumquat", 3), ("plum", 11)]
>>> some_list.getIndexOfTuple(1, 7)
1
>>> some_list.getIndexOfTuple(0, "kumquat")
2
getIndexOfTuple () es solo un método hipotético que acepta un subíndice y un valor, y luego devuelve el índice del elemento de la lista con el valor dado en ese subíndice. Esper
¿Hay alguna forma de lograr ese resultado general, utilizando listas de comprensión o lambas o algo así "en línea"? Creo que podría escribir mi propia clase y método, pero no quiero reinventar la rueda si Python ya tiene una manera de hacerlo.