Question
Which practice avoids a common mistake with datetime and Time Zone Awareness?
- Ignore the datetime and Time Zone Awareness issue and rely on team discipline instead of clearer APIs or invariants.
- Do not compare or convert datetimes casually when one value is naive and the other is aware, because the semantics are not interchangeable.
- Silence the datetime and Time Zone Awareness problem by using broad catches, hidden globals, or extra shared mutable state.
- Prefer the version of datetime and Time Zone Awareness 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: B. Do not compare or convert datetimes casually when one value is naive and the other is aware, because the semantics are not interchangeable.
Do not compare or convert datetimes casually when one value is naive and the other is aware, because the semantics are not interchangeable. This is a common failure mode in real Python code and a frequent interview follow-up.
Track: Python