What are interned strings and when does identity comparison work on str?
PICTURE THIS: PYTHON TYPES
Simple meaning
CPython interns some identifiers and literals, so two copies of 'foo' may be the same object.
WHY — Data Types instead of guessing?
Why interviewers care about Data Types:
people who only read docs from people who shipped.
and tied to Python work.
Name the idea, why it exists, then one short example.
End with when you use it and one common pitfall.
STEPS — What happens step by step?
Before you speak the answer, walk the interviewer through these steps:
- 1CPython interns some identifiers
and literals, so two copies of 'foo' may be the same object.
- 2Why it exists
This is an implementation detail
- 3'is' on strings is
not a substitute for ==.
- 4Identical long strings constructed
at runtime often have different identities even when equal.
- 5Common mistake
What juniors usually get wrong.
- 6Close
When you pick this over the alternative.
EXAMPLE — See it in action
Here's a short line you can speak, broken into clear beats:
Note: Adapt this scaffold to your own project — keep it under 60–90 seconds.
Key takeaway
CPython interns some identifiers and literals, so two copies of 'foo' may be the same object. This is an implementation detail