Я прочитал документы Python 2 и заметил функцию id()
:
Верните "идентификатор" объекта. Это целое число (или длинное целое число), которое гарантировано будет уникальным и постоянным для этого объекта в течение его жизни. Два объекта с неперекрывающимся временем жизни могут иметь одинаковое значение id().
Подробности реализации CPython: это адрес объекта в памяти.
Итак, я экспериментировал, используя id()
со списком:
>>> list = [1,2,3]
>>> id(list[0])
31186196
>>> id(list[1])
31907092 // increased by 896
>>> id(list[2])
31907080 // decreased by 12
Что такое целое число, возвращаемое функцией? Является ли он синонимом адресов памяти в C? Если да, то почему целое не соответствует размеру типа данных?
Когда используется id()
на практике?