Dav*_*ter 25 python built-in next
Python 2.6引入了一个next函数.
为什么这有必要?人们总是可以打字obj.next()而不是next(obj).
后者更多pythonic吗?
eum*_*iro 26
通过在python 3)方法中调用它来从迭代器中检索下一个项目.如果给定default,则在迭代器耗尽时返回,否则引发.
next()(__next__()StopIteration
你有default选择权.
Nik*_* B. 12
除了显而易见的附加功能外,它与生成器表达式一起使用时看起来也更好.相比
(x for x in lst if x > 2).next()
Run Code Online (Sandbox Code Playgroud)
至
next(x for x in lst if x > 2)
Run Code Online (Sandbox Code Playgroud)
后者与Python的其他风格,恕我直言更加一致.