[Python-Dev] PEP 218 (sets); moving set.py to Lib

Brett Cannon drifty@bigfoot.com
Mon, 19 Aug 2002 15:23:02 -0700 (PDT)


[Guido van Rossum]

<snip>
>
> My current approach (now in CVS!) is to remove the sort_repr flag to
> the constructor, but to provide a method that can produce a sorted or
> an unsorted representation.  __repr__ will always return the items
> unsorted, which matches what repr(dict) does.  After all, I think it

I just updated my CVS copy and I like your implementation.  +1 from me for
how you are handling it.

> could be confusing to a user when 'print s' shows
>
>     Set([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
>
> but
>
>     for i in s: print i,
>
> prints
>
>     9 8 7 6 5 4 3 2 1 0
>

Good point.  As Fran?s pointed out, newbies do expect dicts to always come
out in the same order (and I must say that I, like Fran?s, have never seen
any docs saying that it does always come out the same order as long as
nothing has mutated) and I would expect that expectation to carry over to
sets.

-Brett C.