On Jan 15, 2008 10:10 AM, <[EMAIL PROTECTED]> wrote: > > I've noticed that I can update() a set with a list but I can't extend a set > with a list using the |= assignment operator. > > >>> s = set() > >>> s.update([1,2,3]) > >>> s > set([1, 2, 3]) > >>> s |= [4,5,6] > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > TypeError: unsupported operand type(s) for |=: 'set' and 'list' > >>> s |= set([4,5,6]) > >>> s > set([1, 2, 3, 4, 5, 6]) > > Why is that? Doesn't the |= operator essentially map to an update() call?
No, according to 3.7 Set Types, s | t maps to s.union(t). -- Neil Cerutti <[EMAIL PROTECTED]> -- http://mail.python.org/mailman/listinfo/python-list