Gia*_*nis 5 python built-in python-3.x
在Python中是否有一个内置函数,它将返回给定列表和验证函数的单个结果?
例如,我知道我可以做以下事情:
resource = list(filter(lambda x: x.uri == uri, subject.resources))[0]
Run Code Online (Sandbox Code Playgroud)
以上将基于ther resource.uri字段从资源列表中提取资源.虽然这个字段值是uinique,但我知道我要么有1个或0个结果.filter
函数将迭代整个列表.在我的情况下它的20个元素,但我想知道是否有一些其他内置方法来停止第一次匹配的迭代.
请参阅https://docs.python.org/3/library/functions.html#next
next(迭代器[,默认])
通过调用next()方法从迭代器中检索下一个项目.如果给定default,则在迭代器耗尽时返回,否则引发StopIteration.
例如在你的情况下:
resource = next(filter(lambda x: x.uri == uri, subject.resources), None)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5329 次 |
最近记录: |