If you’re really lucky, there will be a docstring for this function that outlines the structure of the parameter user, saving you from having to dig through the function and identify the possible keys that exist in parameter user.
The problem here is twofold:
1. Dictionaries in python are mutable and can have arbitrary schemas.
a. This in itself isn’t a problem and can be a good thing, depending on your needs. Its usage, however, is really only enabled by the quality of the second point, which is:
2. You must rely on the documentation to know the structure, and the documentation must stay updated as the structure evolves.
Read on to see how the
dataclass library can create a wrapper around dictionary objects.