> I've stumbled upon an oddity using sets. It's trivial to test if a > value is in the set, but it appears to be impossible to retrieve a > stored value, other than by iterating over the whole set.
Of course it is. That's why it is called a set: it's an unordered collection of objects, keyed by nothing. If you have a set of elements, and you check "'foo' in s", then you should be able just to use the string 'foo' itself for whatever you want to do with it - you have essentially created a set of strings. If you think that 'foo' and Element('foo') are different things, you should not implement __eq__ in a way that they are considered equal. Regards, Martin _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com