Python mantıksal işleçler sorusu

a fonksiyon olmadigi icin deger donduremez. a degere sahip bir degisken.


“Kotu bir programciyim” demek istedik. if gibi kontrollere giren / not gibi operatorlere operand olan ifadelerin bool turunde olmasi lazim, yoksa bool(ifade) denmis gibi cevriliyorlar.

Programcinin hata yapmasini engellemek isteyen diller bu tur strbool gibi cevrimlerin implicit (otomatik) olmasina izin vermiyor cunku cevrim kurallari dili tasarlayan insanlarin kafasina gore oluyor ve mantiga veya dili kullananlarin beklentilerine her zaman uymuyor. bool("False") Python’da True mesela.

Bu kadar soru soran bir insan olarak artik ifadelerini duzeltmis olman gerekiyor:

“Neden 7<9 and "m" ifadesinin degeri "m"

Cevap dil kurallarinda bir yerde gizli.

Hayir, bu ifade e = (7<9 and "m") gibi parse ediliyor ve e degiskenine atama and ifadesi degerlendirilmeden olmuyor.

Bu “x = x or default_value” gibi ifadeleri mumkun kilmak icin tasarlanmis bir ilginclik ve kullanimi code review’da azar yeme sebebi.

1 Beğeni