diff --git a/pym/calculate/lib/utils/tools.py b/pym/calculate/lib/utils/tools.py index 6358331..bf38863 100644 --- a/pym/calculate/lib/utils/tools.py +++ b/pym/calculate/lib/utils/tools.py @@ -195,7 +195,6 @@ class SingletonParam(type): cls.instance[keyarg] = create_obj(*args, **kw) return cls.instance[keyarg] - def classificate(iterator): """ Классифицировать элементы по признаку (first первый last последний) @@ -209,8 +208,13 @@ def classificate(iterator): def __repr__(self): return "Mark(first=%s,last=%s)" % (self.first, self.last) + iterator = iter(iterator) - obj = next(iterator) + try: + obj = next(iterator) + except StopIteration: + #empty iterator + return try: obj_next = next(iterator) yield Mark(first=True, last=False), obj