在一个元组或对象的列表上使用Python的列表索引()方法?

11 浏览
0 Comments

在一个元组或对象的列表上使用Python的列表索引()方法?

Python的list类型有一个index()方法,它接受一个参数并返回列表中与该参数匹配的第一个项的索引。例如:

>>> some_list = ["apple", "pear", "banana", "grape"]

>>> some_list.index("pear")

1

>>> some_list.index("grape")

3

是否有一种优雅(惯用)的方法可以将其扩展到复杂对象的列表,例如元组?理想情况下,我想能够做这样的事情:

>>> tuple_list = [("pineapple", 5), ("cherry", 7), ("kumquat", 3), ("plum", 11)]

>>> some_list.getIndexOfTuple(1, 7)

1

>>> some_list.getIndexOfTuple(0, "kumquat")

2

getIndexOfTuple()只是一个假设的方法,它接受一个子索引和一个值,然后返回具有该子索引处给定值的列表项的索引。我希望能够以列表推导、lambda或类似的“内联”方式实现这个通用结果。我想我可以编写自己的类和方法,但如果Python已经有一种方法可以实现,我就不想重复造轮子。

0