id()
Функция id() возвращает целое число, уникальное для объекта в течение
его жизни. В CPython это, как правило, адрес объекта в памяти. Полезна для
проверки того, ссылаются ли две переменные на один и тот же объект.
Сигнатура
id(object)
Параметры:
object— любой объект.
Возвращает: целое число — идентификатор объекта.
Примеры
Базовое получение идентификатора:
x = [1, 2, 3]
print(id(x))
140234567890432
Две переменные на один объект:
a = [10, 20]
b = a
print(id(a) == id(b))
print(a is b)
True
True
Копия списка — другой объект:
a = [1, 2, 3]
b = a.copy()
print(id(a) == id(b))
False
Кэширование малых целых чисел:
x = 100
y = 100
print(id(x) == id(y))
x = 10**6
y = 10**6
print(id(x) == id(y))
True
False
Отслеживание изменения объекта:
lst = [1, 2]
before = id(lst)
lst.append(3)
after = id(lst)
print("same object?", before == after)
lst = lst + [4]
print("after concat:", before == id(lst))
same object? True
after concat: False
Примечание
Идентификатор гарантированно уникален только пока объект существует. После его удаления то же число может быть переиспользовано для нового объекта.
См. также
Примечание
Описание основано на официальной документации Python (docs.python.org), распространяемой под лицензией PSF License v2. © Python Software Foundation.