Message 320730 - Python tracker (original) (raw)

The primary motivation for these improvements was avoiding a while/pop pattern for looping. A for-loop is a big improvement over copying a list, then repeatedly popping the 0th element.

A lesser improvement is the use of a.intersection(b) instead of c = set(b); len(c) > len(c - a). The check for intersection is more clear, and it avoids an unnecessary set construction.

https://github.com/python/cpython/pull/7999/