Consider a simple assignment statement in Python:
a = b
The meaning of this statement may seem trivial. What we do here is take the value of the name
b and assign it to the name
a, but do we really? This is an ambiguous explanation that gives rise to a lot of questions:
- What does it mean for a name to be associated with a value? What is a value?
- What does CPython do to assign a value to a name? To get the value?
- Are all variables implemented in the same way?