On Thu, May 7, 2009 at 11:58 AM, Alan Cameron <alan.came...@iname.com> wrote: > "Alan Cameron" <alan.came...@iname.com> wrote in message > news:hrfml.50224$tb.4...@newsfe07.ams2... >>I am not sure of this is the right place to ask a question about the >>tutorial >> >> http://docs.python.org/3.0/tutorial/datastructures.html#sets >> >> why is the printed result of >> >>>>> basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'} >>>>> print(basket) >> {'orange', 'banana', 'pear', 'apple'} >> >> in the sequence given? >> >> > > Thanks to all who replied. > I assume therefore that the order in which the items of the set are printed > could vary each time it is printed?
Due to the underlying dict-based implementation, the order will stay the same until you modify the set (i.e. add or remove an element), at which point it may change; it's basically the same behavior as with printing a dict. So this will always print the same thing twice: print basket print basket Whereas this might not: print basket #modify the set basket.discard("banana") basket.add("banana") print basket Cheers, Chris -- http://blog.rebertia.com -- http://mail.python.org/mailman/listinfo/python-list