[Python-Dev] Getting values stored inside sets
"Martin v. Löwis"
martin at v.loewis.de
Fri Apr 3 18:43:05 CEST 2009
> 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
More information about the Python-Dev