Python Booleans Konu Anlatımı
Booleans, programlamada bizlere “doğru” veya “yanlış” kavramlarını ifade etme imkanı tanıyan bir veri tipidir. Bu basit ama güçlü kavram, bilgisayar bilimlerinde karar mekanizmalarının temelini oluşturur. Bu yazımızda, Python programlama dilinde “mantıksal değerler” olarak çevirebileceğimiz booleans konu anlatımı yapacağız.
Booleans (Mantıksal Değerler)
Bir programın işleyişi, genellikle bir dizi koşula bağlıdır. Örneğin, bir banka uygulaması düşünelim. Kullanıcının hesabında yeterli bakiye var mıdır? Eğer cevap “evet” (yani True
) ise para çekme işlemi gerçekleştirilir; eğer “hayır” (yani False
) ise işlem reddedilir. Bu basit doğru veya yanlış cevabı, programın nasıl bir eylem gerçekleştireceğini belirler.
Aynı şekilde, bir web sitesinde bir kullanıcının oturum açıp açmadığını kontrol ederken de Booleans kullanılır. Kullanıcı oturum açtıysa (True
), ona özel içerikler gösterilir. Açmadıysa (False
), belki de oturum açma veya kayıt olma sayfasına yönlendirilir.
Bu örnekler, Booleans’ın programlamada nasıl kritik bir rol oynadığını gösteriyor. Doğru veya yanlış kavramları, bir programın farklı yollarda ilerlemesini veya farklı işlemler yapmasını sağlar.
“Peki, neden Boolean olarak adlandırılmış?” Aslında “Boolean” adı, 19. yüzyılda yaşamış olan İngiliz matematikçi George Boole‘dan gelmektedir. George Boole, bilgiyi ve mantığı ikili (binary) terimlerle ifade eden bir matematik dalı olan “Boolean Cebiri“ni yaratmıştır. Boole, “An Investigation of the Laws of Thought” (Düşüncenin Kanunlarının Araştırılması) adlı eserinde, değişkenlerin sadece iki olası değeri temsil edebileceği bir mantık sistemi üzerine çalışmıştır.
İşte bizim True
(Doğru) ve False
(Yanlış) olarak bildiğimiz değerlerin temeli de buraya dayanmaktadır. Kendisinin bu değerli katkılarından ötürü, bu kavrama “Boolean” adı verilmiştir.
Bu yapı haliyle, bilgisayarların çalışma mantığının temelini oluşturur. Transistörlerin ve dijital devrelerin ikili değerleri (açık/kapalı, 1/0, True/False) kullanması, bilgisayarın en temel seviyede nasıl kararlar aldığını ve işlemleri nasıl gerçekleştirdiğini anlamamıza yardımcı olur.
Bu nedenle, Boolean mekanizması bilgisayarın beyni olarak kabul edilebilir, çünkü bir bilgisayarın temel işlevleri ve algoritmaları bu mantık üzerinden çalışır. Her bir programın ve işlemin arkasında, belirli koşulların doğru olup olmadığını kontrol eden, veriyi işleyen ve sonuçlar üreten Boolean değerler ve işlemler bulunmaktadır. Zaten Boole cebiri tüm modern bilgisayar aritmetiğinin de temelidir.
Python’da Booleans Kullanımı
Boolean kavramı, programlamada karar mekanizmalarının temel taşıdır. Bir programın farklı yolları takip etmesi, belli bir durumun doğru ya da yanlış olmasına bağlıdır. Şimdi bu kritik kavramın Python programlama dilinde nasıl temsil edildiğine ve kullanıldığına göz atalım.
Python’da, Boolean veri tipi iki değeri temsil eder: True
ve False
. Bu değerler, bir durumun doğru ya da yanlış olduğunu kontrol etmek için kullanılır.
Koşul bildirmek için kullanılan if-elif-else ifadeleri de bool değerlerini, yani True
veya False
değeri döndürülür. Bakınız:
1 2 3 4 5 6 7 |
a = 200 b = 100 if b > a: print("b a'dan büyüktür.") else: print("b, a'dan büyük değildir.") |
Bir başka örnek olarak bir online mağaza uygulaması düşünün. Kullanıcının sepetinde ürün olup olmadığını kontrol etmek istediğimizde Boolean kullanırız:
1 2 3 4 5 |
sepetteUrunVar = True if sepetteUrunVar: print("Ödeme sayfasına yönlendiriliyorsunuz.") else: print("Sepetinizde ürün bulunmamaktadır.") |
Yukarıdaki örnekte, sepetteUrunVar
adlı Boolean değişkenini kullanarak sepetin boş olup olmadığını kontrol ediyoruz. Eğer doğruysa (True
), kullanıcıyı ödeme sayfasına yönlendiriyoruz.
bool ()
bool()
fonksiyonu, Python’da verilen bir değerin Boolean karşılığını döndürmek için kullanılır. Bir başka deyişle, bu fonksiyon bir değerin “doğruluk” değerini kontrol eder.
- Sayısal değerler için: 0 haricindeki tüm sayısal değerler
True
olarak değerlendirilir.
1 2 3 |
print(bool(0)) # False print(bool(1)) # True print(bool(-5)) # True |
- Metinsel değerler için: Boş string (“”) dışındaki tüm metinler
True
olarak değerlendirilir.
1 2 3 4 5 6 7 8 |
print(bool([])) # False print(bool([1, 2, 3])) # True print(bool(())) # False print(bool((1, 2))) # True print(bool({})) # False print(bool({"anahtar": "değer"})) # True |
- Listeler, demetler ve sözlükler için: Boş koleksiyonlar (
[]
,()
,{}
)False
olarak değerlendirilirken, içerisinde eleman olan koleksiyonlarTrue
olarak değerlendirilir.
1 2 3 4 5 6 7 8 |
print(bool([])) # False print(bool([1, 2, 3])) # True print(bool(())) # False print(bool((1, 2))) # True print(bool({})) # False print(bool({"anahtar": "değer"})) # True |
Yukarıdaki örneklerde de fark edileceği üzere çoğu değer True
döndürmektedir. Bazı durumlar dışında False
olarak değerlendirilen çok fazla değer yoktur. Bu değerler aşağıda listelenmiştir:
- (), [], {}, “” gibi boş değerler
- 0 rakamı
- None ifadesi
- False değeri
1 2 3 4 5 6 7 |
print(bool(False)) print(bool(None)) print(bool(0)) print(bool("")) print(bool(())) print(bool([])) print(bool({})) |
Özetle bool()
fonksiyonu, özellikle koşullu ifadelerde bir değerin “doğruluk” durumunu kontrol etmek istediğimizde oldukça faydalıdır. Örneğin bir fonksiyonun döndürdüğü değerin doğru ya da yanlış olup olmadığını kontrol ederken bu fonksiyonu kullanabiliriz.
❗ Python’da foknksiyonlar aracılığıyla da Boolean Döndürebilir. Bakınız:
1 2 3 4 |
def myFunction() : return False print(myFunction()) |
Sonuç olarak, Boolean değerler Python’da birçok yerde karşımıza çıkar ve programın hangi yolu izleyeceğine karar vermek için kritik bir rol oynar.