Question
Which practice avoids a common mistake with __name__ == '__main__' and Entry Points?
- Do not bury important application startup in implicit import side effects when the workflow should have one explicit starting point.
- Ignore the __name__ == '__main__' and Entry Points issue and rely on team discipline instead of clearer APIs or invariants.
- Silence the __name__ == '__main__' and Entry Points problem by using broad catches, hidden globals, or extra shared mutable state.
- Prefer the version of __name__ == '__main__' and Entry Points 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 bury important application startup in implicit import side effects when the workflow should have one explicit starting point.
Do not bury important application startup in implicit import side effects when the workflow should have one explicit starting point. This is a common failure mode in real Python code and a frequent interview follow-up.
Track: Python