human
I wrote the below code

    cls_getitem = cls.__getitem__
    cls_setitem = cls.__setitem__
    cls_delitem = cls.__delitem__
    def __getitem__(self, key):
        print ('Getting    ' + str(key))
        return cls_getitem(self, key)
    def __setitem__(self, key, value):
        print 'Setting    {}    =    {!r}'.format(key, value)
        return cls_setitem(self, key, value)
    def __delitem__(self, key):
        print ('Deleting    ' + str(key))
        return cls_delitem(self, key)
    cls.__getitem__ = __getitem__
    cls.__setitem__ = __setitem__
    cls.__delitem__ = __delitem__
    return cls

What's a good function header?

Can you provide a Python program to print ('Getting    ' + str(key))?
assistant
#Here is Python program to print ('Getting    ' + str(key))
.

def LoggedMapping(cls):