sando o método list index () do Python em uma lista de tuplas ou objeto

O tipo de lista do Python possui um método index () que pega um parâmetro e retorna o índice do primeiro item da lista correspondente ao parâmetro. Por exemplo

>>> some_list = ["apple", "pear", "banana", "grape"]
>>> some_list.index("pear")
1
>>> some_list.index("grape")
3

Existe uma maneira graciosa (idiomática) de estender isso para listas de objetos complexos, como tuplas? Idealmente, eu gostaria de poder fazer algo assim:

>>> tuple_list = [("pineapple", 5), ("cherry", 7), ("kumquat", 3), ("plum", 11)]
>>> some_list.getIndexOfTuple(1, 7)
1
>>> some_list.getIndexOfTuple(0, "kumquat")
2

getIndexOfTuple () é apenas um método hipotético que aceita um sub-índice e um valor e, em seguida, retorna o índice do item de lista com o valor fornecido nesse sub-índice. Eu esper

Existe alguma maneira de alcançar esse resultado geral, usando compreensão de lista ou lambas ou algo "em linha" como esse? Acho que poderia escrever minha própria classe e método, mas não quero reinventar a roda se o Python já tiver uma maneira de fazê-l

questionAnswers(24)

yourAnswerToTheQuestion