I'm not super familiar w/ python set functions, but in my reading, the .union form allows the arg to not be any iterable whereas the operator form + requires the operands to all be sets. That's why I used the named functions. If I'm wrong, I'm happy to change it. I just thought the impl of union may avoid the intermediate set conversion. (granted I could have read the source and still haven't)