Python 基于给定值查找列表中字典项的索引号

Python 基于给定值查找列表中字典项的索引号,python,python-2.7,list,class,dictionary,Python,Python 2.7,List,Class,Dictionary,我正在尝试访问存储在列表中的词典的索引号。我正试图根据这个索引打印一份声明,但我不确定该怎么做 以下是我当前的代码: def getSpecies(self, animalName): for items in self.animalList: for key, value in items.items(): if self.animalName == value: type = se

我正在尝试访问存储在列表中的词典的索引号。我正试图根据这个索引打印一份声明,但我不确定该怎么做

以下是我当前的代码:

def getSpecies(self, animalName):
        for items in self.animalList:
            for key, value in items.items():
                if self.animalName == value:
                    type = self.animalList[itemsIndex]['Type']
                    print (str(self.animalName) + "' is a " + type)
其中,
self.animalName
是用户输入,
self.animalList
包含字典列表

我希望示例输出为:

Shamu is a Whale
列表的外观示例如下:

self.animalList = [{'Litter': '3', 'Type': 'Whale', 'Mass': '300', 'Name': 'Shamu'}, 
                   {'Litter': '0', 'Type': 'Bird', 'Mass': '5', 'Name': 'Woody'}]
你想要的是:


索引号从何而来?我认为最好的说法是,我会提示用户输入列表中存储的动物名称,然后尝试获取动物名称,并将其与字典中的值进行比较。如果名称匹配,则获取索引号..但我不确定如何编写。我认为您的第二个for循环也没有必要。您只需要找到
'Name'
键的值。我还避免使用
type
作为变量名,因为它是内置的。
for itemsIndex, items in enumerate(self.animalList):