а как объясняется второе?
В питоне есть два оператора. == и is. Первый проверяет является ли первый объект идентичен второму. В питоне у каждого объекта есть своя ссылка на себя же в памяти. is проверяет ведут ли ссылки на один и тот же объект памяти. Но в питоне есть определённое ограничение по размеру кешируемых объектов, отсюда имеем, что объекты большого размера будут иметь ссылки на разные объекты в памяти.