1
我在我的字典的名单如下数据:发现在Python从字典列表中选择特定值
data = [{'I-versicolor': 0, 'Sepal_Length': '7.9', 'I-setosa': 0, 'I-virginica': 1},
{'I-versicolor': 0, 'I-setosa': 1, 'I-virginica': 0, 'Sepal_Width': '4.2'},
{'I-versicolor': 2, 'Petal_Length': '3.5', 'I-setosa': 0, 'I-virginica': 0},
{'I-versicolor': 1.2, 'Petal_Width': '1.2', 'I-setosa': 0, 'I-virginica': 0}]
,并获得基于键和值的列表,我使用了以下内容:
next((item for item in data if item["Sepal_Length"] == "7.9"))
然而,所有的字典中不包含关键Sepal_Length
,我得到:
KeyError: 'Sepal_Length'
我该如何解决这个问题?
这个问题让我想'list.index'应该带一个可选的'key',就像'list.sort'一样用作谓词... – Claudiu
@Claudiu - 这是一个有趣的想法。我经常使用这个'next'成语,但它有一些夸克(例如,如果你不确定是否会找到匹配就提供一个默认值) – mgilson