Middle+
Hogyan lehet megkapni egy objektum memória címét Pythonban? Hogyan értelmezi az is operátor, hogy két objektum ugyanarra az objektumra hivatkozik?
sobes.tech MI
Válasz az MI-től
В Python получить адрес объекта в памяти можно с помощью встроенной функции id(). Она возвращает уникальный идентификатор объекта, который обычно соответствует его адресу в памяти (хотя это не гарантируется спецификацией, но в CPython именно так).
Пример:
obj = []
print(id(obj)) # Выведет адрес объекта в памяти
Оператор is сравнивает два объекта по их идентификаторам, то есть по результату id(). Если id(a) == id(b), значит a is b вернёт True, то есть обе переменные ссылаются на один и тот же объект в памяти.
Таким образом, is проверяет именно тождественность объектов, а не равенство по значению.