Hi, There's a simple function that I use many times, and I think may be a good fit to be added to itertools. A function that gets an iterator, and if it has exactly one element returns it, and otherwise raises an exception. This is very useful for cases where I do some sort of query that I expect to get exactly one result, and I want an exception to be raised if I'm wrong. For example: jack = one(p for p in people if p.id == '1234') sqlalchemy already has such a function for queries: https://docs.sqlalchemy.org/en/13/orm/query.html#sqlalchemy.orm.query.Query.... This is my implementation: def one(iterable): it = iter(iterable) try: r = next(it) except StopIteration: raise ValueError("Iterator is empty") try: next(it) except StopIteration: return r else: raise ValueError("Iterator has more than one item") What do you think? Thanks, Noam