Question
Which practice avoids a common mistake with Descriptors?
- Ignore the Descriptors issue and rely on team discipline instead of clearer APIs or invariants.
- Silence the Descriptors problem by using broad catches, hidden globals, or extra shared mutable state.
- Prefer the version of Descriptors that makes behavior less predictable as long as the code still runs.
- Do not reach for custom descriptors as the default abstraction when a property or simpler class design already expresses the rule clearly.
Hint
Look for the option that protects correctness instead of hiding the problem.
Answer and rationale
Correct answer: D. Do not reach for custom descriptors as the default abstraction when a property or simpler class design already expresses the rule clearly.
Do not reach for custom descriptors as the default abstraction when a property or simpler class design already expresses the rule clearly. This is a common failure mode in real Python code and a frequent interview follow-up.
Track: Python