[Python-Dev] Proposal: defaultdict
Raymond Hettinger
python at rcn.com
Sun Feb 19 04:53:35 CET 2006
> > Also, I think has_key/in should return True if there is a default.
> It certainly seems desirable to see True where d[some_key]
> doesn't raise an exception, but one could argue either way.
Some things can be agreed by everyone:
* if __contains__ always returns True, then it is a useless feature (since
scripts containing a line such as "if k in dd" can always eliminate that line
without affecting the algorithm).
* if defaultdicts are supposed to be drop-in dict substitutes, then having
__contains__ always return True will violate basic dict invariants:
del d[some_key]
assert some_key not in d
Raymond
More information about the Python-Dev
mailing list