Что демонстрирует изменение id(a) после присваивания a = 5, а затем a = 6?
id(a)
a = 5
a = 6
Числа неизменяемы, поэтому после повторного присваивания a начинает ссылаться на другой объект-число.
a
Значение изменилось с int на float.
int
float
id() просто возвращает числовое значение, хранящееся в объекте.
id()
Исходный объект-целое число был изменён на месте.