[Peter Ludemann]
> Does it matter whether the dict order after pop/delete is explicitly
> specified, or just specified that it's deterministic?
Any behavior whatsoever becomes essential after it becomes known ;-)
For example, dicts as currently ordered easily support LRU (least
recently used) purging like so:
On access:
result = d.pop(key)
d[key] = result
This moves `key` from wherever it was to the _most_ recently used position.
To purge the `numtopurge` least recently used keys (since traversing
the dict is always from least-recently to most-recently added):
topurge = tuple(itertools.islice(d, numtopurge))
for key in topurge:
del d[key]
Is it worth guaranteeing that will always "work" (as intended)? Not
to me, but I do have code that relies on it now - and we can count on
someone else saying it's utterly crucial ;-)
_______________________________________________
Python-Dev mailing list
[email protected]
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com