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.