Question
Which practice avoids a common mistake with Import System and sys.modules?
- Do not assume importing a module twice reruns its top-level code as though the interpreter had never seen it before.
- Ignore the Import System and sys.modules issue and rely on team discipline instead of clearer APIs or invariants.
- Silence the Import System and sys.modules problem by using broad catches, hidden globals, or extra shared mutable state.
- Prefer the version of Import System and sys.modules that makes behavior less predictable as long as the code still runs.
Hint
Look for the option that protects correctness instead of hiding the problem.
Answer and rationale
Correct answer: A. Do not assume importing a module twice reruns its top-level code as though the interpreter had never seen it before.
Do not assume importing a module twice reruns its top-level code as though the interpreter had never seen it before. This is a common failure mode in real Python code and a frequent interview follow-up.
Track: Python