어떤 경우라도 변수가 생성되면 새로운 값을 대입할 수 있다. 다음 예제를 살펴보면 마법 상자에 저장된 값이 증가하고 있다(심지어 실제로 값이 증가하는 것도 아니다).
>>> n = 5
>>> n = n + 1
>>> n = n + 1
>>>
7
이 코드는 n에 1을 더해서 다시 대입(reassigning)하고 있다. 매번 기존에 할당된 값이 사라지며, n은 새로운 값을 갖게 된다.
대입을 하면 변수가 생성되며, 아직 생성되지 않은 변수는 사용할 수 없다. IDLE에서 다음 코드를 실행하면 에러가 발생한다.
>>> a = 5
>>> b = a + x # 에러!
x에 아직 값이 대입되지 않았기 때문에 파이썬에서 에러를 발생시키는 것이다. 해결책은 대입 연산자(=)의 우측에서 x를 사용하기 전에 미리 값을 대입하는 것이다.
다음 예제에서는 더 이상 에러가 발생하지 않는다. 두 번째 줄에서 x에 값을 대입했기 때문이다.
>>> a = 5
>>> x = 2.5
>>> b = a + x
>>> b
7.5