Pythons Listentyp hat eine index()-Methode, die einen Parameter annimmt und den Index des ersten Elements in der Liste zurückgibt, das dem Parameter entspricht. Zum Beispiel:
>>> some_list = ["apple", "pear", "banana", "grape"]
>>> some_list.index("pear")
1
>>> some_list.index("grape")
3
Gibt es eine elegante (idiomatische) Möglichkeit, dies auf Listen komplexer Objekte, wie Tupel, auszuweiten? Im Idealfall möchte ich in der Lage sein, so etwas wie dieses zu tun:
>>> tuple_list = [("pineapple", 5), ("cherry", 7), ("kumquat", 3), ("plum", 11)]
>>> some_list.getIndexOfTuple(1, 7)
1
>>> some_list.getIndexOfTuple(0, "kumquat")
2
getIndexOfTuple() ist nur eine hypothetische Methode, die einen Subindex und einen Wert akzeptiert und dann den Index des Listenelements mit dem angegebenen Wert an diesem Subindex zurückgibt. Ich hoffe
Gibt es eine Möglichkeit, dieses allgemeine Ergebnis zu erreichen, indem man Listenauflösungen oder Lambas oder etwas ähnliches "in-line" verwendet? Ich denke, ich könnte meine eigene Klasse und Methode schreiben, aber ich möchte nicht das Rad neu erfinden, wenn Python bereits eine Möglichkeit, es zu tun hat.