import next()python 2.5

前端之家收集整理的这篇文章主要介绍了import next()python 2.5前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用itertools的成对配方的略微修改版本,看起来像这样
  1. def pairwise(iterable):
  2. "s -> (s0,s1),(s1,s2),(s2,s3),..."
  3. a,b = tee(iterable)
  4. next(b,None)
  5. return zip(a,b)

现在我发现我需要使用python 2.5运行代码,其中next()函数抛出以下异常:

< type'exceptions.NameError'>:未定义全局名称’next’

有没有办法使用python 2.5的next()?或者我如何修改函数以使其无论如何工作?

解决方法

您可以自己轻松提供此功能的定义:
  1. _sentinel = object()
  2. def next(it,default=_sentinel):
  3. try:
  4. return it.next()
  5. except StopIteration:
  6. if default is _sentinel:
  7. raise
  8. return default

猜你在找的Python相关文章