Python 3.x 获取字典列表中具有键/值的字典
我有一个字典列表,如下所示:Python 3.x 获取字典列表中具有键/值的字典,python-3.x,Python 3.x,我有一个字典列表,如下所示: [ { "name": "hello", "value": "world" }, { "name": "foo", "value": "bar" } ] 从字典列表中获取字典的python方法是什么?假设您的dict列表存储为变量l,您可以将next()与这样的生成器表达式一起使用,该表达式返回name键为foo的第一个dict: next(d for d in l i
[
{
"name": "hello",
"value": "world"
},
{
"name": "foo",
"value": "bar"
}
]
从字典列表中获取字典的python方法是什么?假设您的dict列表存储为变量
l
,您可以将next()
与这样的生成器表达式一起使用,该表达式返回name
键为foo
的第一个dict:
next(d for d in l if d['name'] == 'foo')
如果
name
键等于foo的l
中没有dict,这将引发StopIteration
,假设dict列表存储为变量l
,则可以将next()
与这样的生成器表达式一起使用,返回其名称
键为foo
的第一个dict:
next(d for d in l if d['name'] == 'foo')
如果l
中没有dict且name
键等于foo,则这将引发StopIteration
,请尝试此简单示例
data = [
{
"name": "hello",
"value": "world"
},
{
"name": "foo",
"value": "bar"
}
]
for item in data:
if item['name'] == 'foo':
print(item)
输出:
{'name': 'foo', 'value': 'bar'}
试试这个简单的例子
data = [
{
"name": "hello",
"value": "world"
},
{
"name": "foo",
"value": "bar"
}
]
for item in data:
if item['name'] == 'foo':
print(item)
输出:
{'name': 'foo', 'value': 'bar'}
总会有一场比赛吗?如果有零个或多个匹配项,您想要什么?是否总是有一个匹配项?如果有零个或多个匹配项,您想要什么?我将添加next
还接受可选的第二个参数,这是要返回的默认值。因此,如果执行next(迭代器,无)
操作,您可以接收正在查找的项目,或者如果未找到任何内容,则可以接收None
,以防您不想捕获异常。我将添加next
还接受可选的第二个参数,这是要返回的默认值。因此,如果执行next(迭代器,无)
操作,您可以接收正在查找的项目,或者如果未找到任何内容,则可以接收None
,以防您不想捕获异常。