
Python’da Boolean veri tipi (True / False) ve karşılaştırma operatörleri konusu, programlamada karar verme süreçlerinin temelini oluşturur.
Boolean (Mantıksal) Veri Tipi
Python’da sadece iki adet Boolean değeri vardır:
- True → Doğru
- False → Yanlış
Bu değerler bool veri tipi olarak tanımlanır:
print(type(True)) # <class 'bool'>
print(type(False)) # <class 'bool'>
Bu değerler genellikle koşullu ifadelerde (if, while vb.) ve karşılaştırmalardan elde edilen sonuçlarda kullanılır.
Boolean Değer Üreten Karşılaştırmalar
Python’da karşılaştırma operatörleriyle iki değer arasında ilişki kurabiliriz. Bu işlemler sonucunda True ya da False döner.
| Operatör | Anlamı | Örnek | Sonuç |
|---|---|---|---|
| == | Eşittir | 5 == 5 | True |
| != | Eşit değildir | 5 != 3 | True |
| > | Büyüktür | 10 > 7 | True |
| < | Küçüktür | 3 < 8 | True |
| >= | Büyük veya eşittir | 5 >= 5 | True |
| <= | Küçük veya eşittir | 4 <= 2 | False |
a = 10
b = 20
print(a == b) # False
print(a < b) # True
Boolean Mantık Operatörleri
Koşulları birleştirmek veya tersine çevirmek için mantık operatörlerini kullanırız:
| Operatör | Anlamı | Örnek | Açıklama |
|---|---|---|---|
| and | ve | True and False | Her ikisi de True ise True olur |
| or | veya | True or False | Biri bile True ise sonuç True olur |
| not | değil (tersi) | not True | True → False, False → True |
x = 5
y = 10
print(x > 3 and y < 20) # True
print(x > 3 and y > 20) # False
print(x > 10 or y < 20) # True
print(not (x == 5)) # False
bool() Fonksiyonu
Herhangi bir ifadeyi Boolean’a çevirmek için bool() fonksiyonu kullanılır:
print(bool(0)) # False
print(bool(42)) # True
print(bool("")) # False
print(bool("Python")) # True
False olarak değerlendirilen ifadeler:
- 0 (sayısal olarak)
- 0.0
- ” (boş string)
- [], {}, () (boş veri yapıları)
- None
Diğer her şey Python’da True olarak kabul edilir.
Uygulama Örneği
username = "admin"
password = "1234"
if username == "admin" and password == "1234":
print("Giriş başarılı")
else:
print("Giriş başarısız")
Özet
- bool sadece True veya False olabilir.
- Karşılaştırma operatörleri ile bool değerler elde edilir.
- and, or, not gibi mantıksal operatörler koşulları birleştirmekte kullanılır.
- bool() fonksiyonu, her ifadeyi True/False’a çevirir.
Örnek 1: Basit Karşılaştırma
a = 15
b = 20
print(a > b)
Beklenen Çıktı:
False
Açıklama: 15, 20’den büyük olmadığı için sonuç False olur.
Örnek 2: Mantıksal and Operatörü
age = 25
has_license = True
if age >= 18 and has_license:
print("Araç kullanabilirsiniz.")
else:
print("Araç kullanamazsınız.")
Beklenen Çıktı:
Araç kullanabilirsiniz.
Açıklama: Hem 18 yaşından büyük hem de ehliyeti olduğu için şartlar sağlanır.
Örnek 3: not Kullanımı
is_raining = False
if not is_raining:
print("Şemsiye almanıza gerek yok.")
else:
print("Şemsiye alın!")
Beklenen Çıktı:
Şemsiye almanıza gerek yok.
Açıklama: Yağmur yağmıyorsa (is_raining = False), not ile bu ifade tersine çevrilir ve True olur.
Örnek 4: bool() ile Boşluk Kontrolü
text = ""
if bool(text):
print("Metin boş değil.")
else:
print("Metin boştur.")
Beklenen Çıktı:
Metin boştur.
Açıklama: Boş bir string (“”) Python’da False olarak değerlendirilir.
Örnek 5: or ile Çoklu Koşul
temperature = 35
is_hot = temperature > 30
is_humid = True
if is_hot or is_humid:
print("Bol su için!")
else:
print("Hava güzel.")
Beklenen Çıktı:
Bol su için!
Açıklama: Sıcaklık 30’dan büyük veya nemli hava varsa, uyarı mesajı gösterilir.
Örnek 6: Proje Zaman ve Bütçe Durumu Değerlendirmesi
# Proje bilgileri
actual_duration = 45 # Gerçekleşen gün sayısı
planned_duration = 40 # Planlanan gün sayısı
actual_cost = 110000 # Harcanan para (TL)
budget = 100000 # Bütçe (TL)
# Karşılaştırmalar
is_delayed = actual_duration > planned_duration
is_over_budget = actual_cost > budget
# Durumu değerlendirme
if is_delayed and is_over_budget:
print("Proje hem gecikmiş hem de bütçeyi aşmış durumda.")
elif is_delayed and not is_over_budget:
print("Proje gecikmiş ama bütçe içinde kalmış.")
elif not is_delayed and is_over_budget:
print("Proje zamanında tamamlanmış ama bütçeyi aşmış.")
else:
print("Proje zamanında ve bütçe içinde tamamlanmış.")
Beklenen Çıktı:
Proje hem gecikmiş hem de bütçeyi aşmış durumda.
Açıklama:
Bu örnek, bir projenin zaman ve maliyet performansını kontrol eden bir yapı sunar. and, not, karşılaştırma operatörleri ve bool mantığı birlikte kullanılmıştır. Bu tür bir yapı, ileride daha büyük bir proje yönetim sisteminin temeli olabilir (örneğin Earned Value hesaplamaları gibi).
Google Colab ile kendiniz deneyin.
https://colab.research.google.com/drive/1qBdufGOH_F7XJW-CDhrVx4LRJHM5kFos?usp=sharing
File ->Save a copy in Drive: Dosyayı kendi Google Drive klasörünüze almanız için kullanabilirsiniz.