Sobes.tech
Junior — Middle

Можете ли објаснити у чему се разликује оператор поређења == и оператор провере идентитета is у Python-у?

sobes.tech АИ

Одговор од АИ

У Python-у, оператор == проверава једнакост вредности објеката, односно пореди садржај или стање објеката. На пример, два различита низа са истим текстом ће бити једнаки са ==.

Оператор is проверава идентитет објеката — указује да ли обе променљиве реферишу на исти објекат у меморији.

Пример:

a = [1, 2, 3]
b = a
c = [1, 2, 3]

print(a == c)  # Труе, јер листе садрже исте елементе
print(a is c)  # Фалсе, различити објекти
print(a is b)  # Труе, обе променљиве указују на исти објекат

Дакле, == одговара за логичку једнакост, а is за физички идентитет објеката.