有趣的Python next()

能快速获得列表中的一个元素

1
2
3
>>> data = [{"name": "Python", "version": "3.7.2"}, {"name": "Django", "version": "2.2b1"}]
>>> next((item for item in data if item["name"] == "Python"), {})
{'name': 'Python', 'version': '3.7.2'}

使用方法:

next(iterator[, default])
相当于class中的__next__
获取iterator的一个元素。
default: 当iterator耗尽时触发 StopIteration 会返回默认值

注意:

如上例子,如果data中存在多个namePython时,返回的是第一个