Sobes.tech
Junior — Middle

Python'da karşılaştırma operatörü == ile kimlik kontrol operatörü is arasındaki farkı açıklayabilir misiniz?

sobes.tech yapay zeka

AI'dan gelen yanıt

Python'da == operatörü, nesnelerin değer eşitliğini kontrol eder, yani nesnelerin içeriğini veya durumunu karşılaştırır. Örneğin, aynı metne sahip iki farklı dize == ile eşittir.

is operatörü ise nesnelerin kimliğini kontrol eder — her iki değişkenin aynı nesneye mi referans verdiğini gösterir.

Örnek:

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

print(a == c)  # True, çünkü listeler aynı öğeleri içeriyor
print(a is c)  # False, farklı nesneler
print(a is b)  # True, her iki değişken aynı nesneye işaret ediyor

Bu nedenle, == mantıksal eşitlik için, is ise nesnelerin fiziksel kimliği içindir.