In this case a is not the same object as b but they have the same value.

Note: Because of the way the CPython reference implementation works, you'll
get inconsistent and unexpected results if you mistakenly use is to compare
for equality on integers. The reference implementation of Python caches integer
objects in the range (-5 to 256 inclusive) as singleton instances for
performance reasons.