Peter Otten writes: ...
> def edges(items): > first = last = next(items) > for last in items: > pass > return [first, last] ... > However, this is infested with for loops. Therefore ... > I don't immediately see what to do about the for loop in edges(), so > I'll use the traditional cop-out: Removing the last loop is left as an > exercise... In the spirit of the exercise: def sekond(x, y): return y def edges(items): # where items is a non-empty iterator first = next(items) last = functools.reduce(sekond, items, first) return [first, last] Of course, right? -- https://mail.python.org/mailman/listinfo/python-list