Kimlik Kontrolleri
Coddy'nin Python Journey'sinin Logic & Flow bölümünün bir parçası — ders 26 / 78.
Python'da, is ve is not operatörleri nesnelerin kimliğini kontrol etmek için kullanılır. İki değişkenin aynı değere sahip olup olmadığını kontrol eden == operatörünün aksine, is operatörü iki değişkenin bellekteki tam olarak aynı nesneye başvurup başvurmadığını kontrol eder.
is'in temel kullanımı:
a = [1, 2, 3]
b = a
c = [1, 2, 3]
print(a is b) # Çıktı: True
print(a is c) # Çıktı: FalseBu örnekte, a ve b aynı liste nesnesine başvurur, bu nedenle a is b True döndürür. Ancak, a ve c aynı değerlere sahip farklı liste nesneleridir, bu nedenle a is c False döndürür.
is not'ın Temel Kullanımı:
x = 5
y = 5
z = 10
print(x is not y) # Çıktı: False
print(x is not z) # Çıktı: TrueBurada, x ve y aynı tam sayı nesnesine başvurur (Python'ın küçük tam sayılar için yaptığı optimizasyonlar nedeniyle), bu yüzden x is not y False değerini döndürür. x ve z farklı nesnelerdir, bu yüzden x is not z True değerini döndürür.
Kimlik denetimleri, iki değişkenin sadece aynı değere sahip olmasından ziyade, bellekte aynı nesneye işaret edip etmediğini belirlemek istediğinizde özellikle yararlıdır.
Görev
Kolaylist1 ve list2 adında iki değişken oluşturun, burada:
list1,[1, 2, 3]listesine başvurur.list2aynı nesneye atanır.
list1 ve list2 değişkenlerinin aynı nesneye başvurup başvurmadığını kontrol etmek için is operatörünü kullanın.list1 ve list2 değişkenlerinin farklı nesnelere başvurup başvurmadığını kontrol etmek için is not operatörünü kullanın.
Kontrollerin sonuçlarını yazdırın.
Kopya kağıdı
is ve is not operatörleri, sadece == gibi değer eşitliğini değil, bellekteki nesne kimliğini kontrol eder.
Değişkenlerin aynı nesneye başvurup başvurmadığını kontrol etmek için is kullanmak:
a = [1, 2, 3]
b = a
c = [1, 2, 3]
print(a is b) # Çıktı: True
print(a is c) # Çıktı: FalseDeğişkenlerin farklı nesnelere başvurup başvurmadığını kontrol etmek için is not kullanmak:
x = 5
y = 5
z = 10
print(x is not y) # Çıktı: False
print(x is not z) # Çıktı: TrueKimlik kontrolleri, iki değişkenin sadece aynı değere sahip olup olmadığını değil, bellekte aynı nesneyi işaret edip etmediğini belirler.
Kendin dene
# Buraya kod yazınBu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Logic & Flow bölümündeki tüm dersler
1Değişken Keşfi
SabitlerÇoklu Değişken AtamalarıDeğişken TakasıYer Tutucu DeğişkenlerSayıları YuvarlamaListe Tür Dönüşümü4Rehber Uygulaması
Menüyü GörüntüleKişi Ekle7Kümeler Bölüm 2
Matematiksel İşlemler Bölüm 1Matematiksel İşlemler Bölüm 2Özet - Hazine AvıAlt Kümeler ve Üst KümelerKümeler Üzerinde YinelemeÖzet - Turnuva Takipçisi10Temel List Comprehension Yapıları
SözdizimiBasit Listeler OluşturmaKoşul EklemeVeri Toplulaştırma KullanımıÖzet - Liste EviÖzet - Özgürlük Elementleri13Envanter Yönetim Sistemi
Projeye Genel BakışÖğe Ekle2Sözlükler Bölüm 1
Sözlük Nedir?Sözlük OluşturmaDeğerlere ErişmeSözlükleri DeğiştirmeÖzet - Tarif Yöneticisi5İleri Seviye Karar Yapıları
Ternary OperatörüÜyelik KontrolleriKimlik KontrolleriGirintileme HatalarıÖzet - Tatil Filtresi8Öğrenci Kayıt Yöneticisi
Projeye Genel BakışÖğrenci Ekle11İleri Seviye Fonksiyonlar
Birden Fazla Değer DöndürmeLambda Fonksiyonları Bölüm 1Lambda Fonksiyonları Bölüm 2Tekrar Görevi - Lambda ile SıralamaÖzyinelemeli Fonksiyonlar Bölüm 1Özyinelemeli Fonksiyonlar Bölüm 2Tekrar - İç İçe Listeleri Toplama14Yüksek Mertebeden Fonksiyonlar
Map FonksiyonuFilter FonksiyonuÖzet - E-posta DoğrulayıcıÖzet - Sayı İşleyici3Sözlükler Bölüm 2
Sözlük Metotlarıİç İçe SözlüklerAnahtar KontrolüSözlüklerde DöngülerÖzet - Frekans Sayacı9İleri Düzey Veri Toplulaştırma
Toplam KullanımıMinimum ve Maksimumu BulmaVerileri Verimli SıralamaÖzet - Dictionary Sıralayıcı