6A more complete solution for this sort of reflective access would be to use mirrors [19]. However, this would require changing the semantics of the Python language. In some senses, the __dict__ attribute can already be seen as a mirror on the attributes of an instances. Indeed, it gives additional guarantees over mirrors, guaranteeing that the identity of __dict__ is the same on all accesses.