Идентификатор целочисленных объектов различен и не имеет никакого отношения к списку. Если вы распечатаете идентификаторы списка, они будут другими. Вы печатаете id целого числа и оно будет таким же, как если бы python повторно использовал этот целочисленный объект за один прогон. (Я не уверен в деталях реализаций, но кажется, что python повторно использует один и тот же целочисленный объект для диапазонов от -5 до 255, пока большие числа (порядка 2 ^ 30) не вычисляются в процессе создания целочисленный объект).
Чтобы лучше понять это, вот пример, который создает два независимых списка и печатает идентификатор одного и того же целого числа и списков:
list1=[1,2,3,4,5]
list2=[4,5]
print(list1[3], id(list1[3]))
print(list2[0], id(list2[0]))
print(list1, id(list1))
print(list2, id(list2))
output:
4 4402473872
4 4402473872
[1, 2, 3, 4, 5] 4404019680
[4, 5] 4404022240