After some additional research, it looks like I may have even
more options to consider including using a UserDict mixin.
I think I've identified another magic method to subclass ...
----- Original message -----
Subject: Creating a dict-like class that counts successful and
failed key matches
Date: Mon, 30 Jun 2014 09:43:49 -0400
As a diagnostic tool, I would like to create a dict-like class
that counts successful and failed key matches by key. By failed
I mean in the sense that a default value was returned vs. an
exception raised. By count, I mean by tracking counts for
individual keys vs. just total success/failure counts. The
class needs to support setting values, retrieving values, and
retrieving keys, items, and key/item pairs. Basically anything
that a regular dict, I'd like my modified class to do as well.
Use case: I'm curious to see what key's we're missing that our
code is using default to provide and I'm also interested in
looking at our high frequency keys as a way to double check our
Is this a common pattern covered by the standard lib (I don't
see anything in collections)?
I'm looking for ideas on how to implement ... as a subclass of
Dict, as a duck-like class offering Dict like methods, other?
I'm also looking for some hints on what magic methods I should
override to accomplish my goal, eg. beyond __getitem__.