‫Tamam.
‫Bu videoda sizi kandırmaya çalışacağım.
‫Eşitlik kontrolü yaptığım bu ifadelere bakmanızı istiyorum.
‫Doğru.
‫Diyorum ki, hey, gerçek eşittir bir mi?
‫Boş dize eşittir bir, boş eşit olan eşitleri silmek için yapar.
‫Birbirimizi.
‫Şimdi videoyu burada durdurun ve bunun sonuçlarının ne olacağını tahmin etmeye çalışın.
‫Hazır.
‫Bu arada, eğer bundan %100 alırsan.
‫Aferin sana, çünkü Python'u ilk kez öğreniyor olsaydım bunu anlayamazdım.
‫Hadi gidelim.
‫Hmm.
‫Bu yüzden mi bekliyordun?
‫Doğru.
‫Doğru olarak değerlendirildiğinde, doğru olarak değerlendirilmek ister.
‫Boş dize, yanlış olarak değerlendirilen bir dizeye eşittir.
‫Bu mantıklı çünkü kesinlikle birbirlerine eşit değiller.
‫Değil mi?
‫Boş bir dizi bire eşit değildir.
‫Ve on eşittir on. 0.
‫Ve sonra her ikisi de boş olan yarış.
‫Doğruya eşittir.
‫Şimdi, burada size göstermemin nedeni, çift eşittirin eşitliği veya değer eşitliğini kontrol etmesidir.
‫Yani, örneğin, ilk doğru bire eşitse.
‫İki farklı türü vardır.
‫Biri tamsayı, diğeri külçe.
‫Onları aynı türe dönüştürecektir.
‫Bu durumda, bu bir boolean değerine bu şekilde dönüştürülecektir.
‫Ve eğer hatırlarsanız, biri gerçektir.
‫Yani bu true olarak değerlendirilecektir, bu yüzden true değerini alırız.
‫Peki ya diğeri?
‫Boş bir dize yanlış olduğundan, yanlış olarak değerlendirilir.
‫Ve yanlış doğru demek değildir.
‫Doğru.
‫Çünkü burada eşitliği kontrol ediyoruz.
‫Böylece bunlardan biri diğer türe dönüştürülür.
‫Peki ya boş bir dizi?
‫Yine, boş bir dizi aslında yanlıştır.
‫Yani bu bire eşit olmayacak.
‫On, 10'luk bir yüzeye eşittir. 0.
‫Bu bir tamsayıya veya floata dönüştürülür ve birbirlerine eşit olurlar.
‫Ve bu beklenen bir davranıştır.
‫Ve sonra boş bir dizi, boş bir diziye eşittir.
‫Bu diziyi eklersem, bir, iki, üç, bir, iki, üç ve çalıştır'a tıklıyorum.
‫Geçersiz bir sözdizimi alıyorum çünkü burada bu var.
‫Şunu tekrar çalıştıralım.
‫Anlıyorum.
‫Bu mantıklı.
‫Bunu bir olarak değiştirelim ve Çalıştır'a tıkladığımda ne olacağını görelim.
‫Tamam.
‫Hala yanlış.
‫Şimdi, bu iş biraz zorlaşıyor, değil mi?
‫Sevdim.
‫Hmm.
‫Bu doğru olarak değerlendirilmeli miydi?
‫Ama hayır, yanlış anladık.
‫Yani bu, buradakine kıyasla tür olarak dönüştürülmez.
‫Şimdi, bu kafanızı karıştırmasın çünkü böyle bir şeyi kontrol ediyorsanız bu kötü bir kod olacaktır.
‫Açıkçası, iki türü, aynı türden iki türü birlikte kontrol ediyor olmalısınız.
‫İdeal olarak, karşılaştırma operatörlerini veya bunun gibi mantıksal operatörleri kullandığınızda, iki türü karşılaştırırsınız ve
‫Python'un bu tür dönüşümünü yapmasına izin vermezsiniz.
‫Ve umarım Python bunu bizim için çözer.
‫Ancak umarım çift kalite mantıklıdır çünkü yapabileceğimiz başka bir kontrol daha var, bu
‫da bir anahtar kelime ve python.
‫Tüm bu eşittir işaretlerini is ile değiştirirsek ne olur?
‫Sizce bir fark olur mu?
‫Bir göz atalım.
‫Çalıştır'a tıklarsam.
‫Her şey için yalan söylüyorum.
‫Hmm.
‫Peki buradaki fark nedir?
‫Equals değer eşitliğini kontrol eder.
‫Ne gibi?
‫Bir, iki, üç.
‫Bu bir, iki, üç ile aynı değere sahip.
‫Bir listede aslında kontroller vardır.
‫Bellekte bu değerin saklandığı konum aynıysa.
‫Hmm.
‫Şunun üzerinden geçelim.
‫Çok doğru.
‫Bu tek nota doğru mu, tek doğru değil mi, doğru olacak tek doğru oran.
‫Ne hakkında?
‫Dize bir.
‫Bu mu?
‫Hayır.
‫Yani, bir tanesinin dize olabilmesi için bir tane olması gerekir, değil mi?
‫Çünkü tek bir dize bellekte sadece tek bir yerde değildir.
‫Kelimenin tam anlamıyla aynı şey.
‫Peki ya bu liste?
‫Aslında, dizi yapalım, boş dizi mi?
‫Bu mu yoksa bu liste bir liste mi?
‫Eğer bunu çalıştırırsak.
‫Hala yanlış anlıyorum.
‫Hmm.
‫Ve bu biraz zor ve aynı zamanda ileri düzey.
‫Her liste oluşturduğumda, hafızada bir yere ekleniyor.
‫Yani bu, bellekteki bir konumdadır.
‫Ama ne zaman yeni bir liste oluştursam.
‫Başka bir yerde oluşturulmuştur.
‫Yani bunlar hafızada farklı yerlerde yaşayan tamamen farklı iki listedir.
‫Yani kontrol edecek, hey, bu aynı bellek alanında mı, bununla aynı kitap rafında mı?
‫Hayır, öyle değil.
‫Peki bu neden sayılar ve dizeler gibi şeyler için işe yarıyor?
‫Bunun nedeni, kaputun altında, bunlar çok basit olan, bellekte bulunan, ancak aynı öğelere
‫sahip aynı liste olsa bile liste gibi bir şeye kıyasla tek bir konumda bulunan türlerdir.
‫Çünkü bu bir veri yapısıdır.
‫Her oluşturduğumuzda, yeni bir konumda oluşturulur, böylece bir A değişkenimiz olsa bile.
‫Bu liste.
‫Ve bu arada, bu sözlükler, kümeler, tuple'lar gibi tüm veri yapılarımız için aynı olacaktır.
‫B eşittir bunu yaparsam ve A'yı kontrol edersem, bu B midir?
‫Hayır.
‫Farklı bir bellek alanında oluşturulurlar.
‫Yani A noktasının bulunduğu yer B noktasının bulunduğu yerden farklı bir yerdedir.
‫Ama eğer yaparsam A eşittir.
‫Doğru anladım çünkü bu çifte eşitlik kontrolü.
‫Sadece vadiler.
‫Şimdi bu biraz zor bir konu, bu yüzden bu videoyu birkaç kez izlemeniz gerekebilir.
‫Bunu kendiniz birkaç kez uygulamanız gerekebilir.
‫Ancak IS ve çift eşittir arasındaki farkın biraz daha katı olma eğiliminde olduğunu unutmayın.
‫Değeri kontrol eden eşitliğe karşı tam olarak aradığınız şeyi kontrol ediyorsunuz.
‫Tamam.
‫Bu çok kötüydü.
‫Bir sonraki videoda görüşürüz.
‫Güle güle.