[Python-3000] A request to keep dict.setdefault() in 3.0 (original) (raw)
tav tav at espians.com
Mon Jul 9 20:59:11 CEST 2007
- Previous message: [Python-3000] A request to keep dict.setdefault() in 3.0
- Next message: [Python-3000] A request to keep dict.setdefault() in 3.0
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
PEP 3100 suggests dict.setdefault() may be removed in Python 3, since it is in principle no longer necessary (due to the new defaultdict type).
However, there is another class of use cases which use setdefault for its limited atomic properties - the initialization of non-mutated data structures that are shared among threads. (And defaultdict cannot achieve the same thing.)
+1
setdefault's ability to return current value is also a very useful functionality and has saved writing:
if key not in dict: value = dict[key] = value
with the simpler:
value = dict.setdefault(key, )
Is there a better way to do the above without .setdefault?
-- love, tav founder and ceo, esp metanational llp
plex:espians/tav | tav at espians.com | +44 (0) 7809 569 369
- Previous message: [Python-3000] A request to keep dict.setdefault() in 3.0
- Next message: [Python-3000] A request to keep dict.setdefault() in 3.0
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]