Anasayfa / PYTHON / Python Operatörler (Operators)

Python Operatörler (Operators)

Bir web sitesi, hesap makinesi veya yapay zeka programı geliştirirken verilerle sürekli olarak etkileşim hâlinde oluruz. Programlama dillerinde, veriler üzerinde işlem yaparak yeni değerler üretilmesini sağlayan sembollere operatör adı verilir. Matematik derslerinden aşina olduğumuz toplama veya çıkarma sembolleri birer operatördür ancak Python’da operatörlerin yetenekleri bunun çok daha ötesindedir.

PYTHON OPERATÖRLER EĞİTİM VİDEOSU İÇİN TIKLAYIN

Bu kapsamlı rehberimizde, Python’da en çok kullanılan operatörleri (Aritmetiksel, Atama, Karşılaştırma, Mantıksal ve Kimlik operatörleri) günlük hayattan örnekler ve kod bloklarıyla adım adım inceleyeceğiz.


1. Aritmetiksel Operatörler (Arithmetic Operators)

Toplama, çıkarma, çarpma, bölme, üs alma ve mod alma gibi temel matematik işlemlerinin yapıldığı operatörlerdir.

  • Toplama (+) ve Çıkarma (-): İki değeri toplar veya çıkarır.
  • Çarpma (*): Matematikte çarpma işlemi genellikle “x” veya nokta (.) ile ifade edilse de, Python dahil çoğu programlama dilinde çarpma işlemi yıldız (*) sembolü ile yapılır.
  • Bölme (/): İlk sayıyı ikinciye böler ve sonucu her zaman ondalıklı (float) olarak verir,. Örneğin 7 / 4 işlemi 1.75 sonucunu üretir.
  • Tam Sayı Bölme (//): İngilizcede “floor division” olarak adlandırılan bu operatör, bölme işlemindeki sadece tam kısmı alır ve kalanı (ondalıklı kısmı) dikkate almaz,. Örneğin 7 // 4 işleminin sonucu 1‘dir.
  • Mod Alma (%): Bir sayının diğer sayıya bölümünden kalan sayıyı bulmamızı sağlar,. Örneğin 7 % 4 işleminin kalanı 3‘tür. Bu operatör özellikle bir sayının tek mi yoksa çift mi olduğunu bulmak için (sayi % 2 == 0) programlamada çok sık kullanılır,.
  • Üs Alma (**): Bir sayının kuvvetini almak için kullanılır. Matematikteki $a^b$ ifadesinin Python’daki karşılığı a ** b‘dir. Örneğin 2 ** 4 kodu bize 16 sonucunu verir.

Örnek Kullanım:

a = 7
b = 4
print("Toplama:", a + b)       # Çıktı: 11
print("Normal Bölme:", a / b)  # Çıktı: 1.75
print("Tam Bölme:", a // b)    # Çıktı: 1
print("Mod Alma (Kalan):", a % b) # Çıktı: 3
print("Üs Alma:", 2 ** 3)      # Çıktı: 8


2. Atama Operatörleri (Assignment Operators)

Programlarımızda tanımladığımız değişkenlere yeni bir değer atamak veya mevcut değeri güncellemek için atama operatörleri kullanılır.

  • Eşittir (=): En temel atama operatörüdür. Sağdaki değeri soldaki değişkene atar. Örneğin a = 2 kodunda, a değişkenine 2 değeri atanmıştır.
  • Matematiksel Atamalar (+=, -=, *=, /=, %=, //=, **=): Kodlarımızı kısaltmak ve daha okunabilir kılmak için kullanılırlar.
    • a += 2 ifadesi, aslında a = a + 2 işleminin kısa yazılışıdır (a’nın mevcut değerine 2 ekler ve sonucu tekrar a’ya atar).
    • Benzer şekilde a *= 3 ifadesi, a = a * 3 anlamına gelmektedir.

Örnek Kullanım:

sayi = 10
sayi += 5  # sayi = sayi + 5 anlamına gelir.
print(sayi) # Çıktı: 15

sayi /= 3  # sayi = sayi / 3 anlamına gelir.
print(sayi) # Çıktı: 5.0


3. Karşılaştırma Operatörleri (Comparison Operators)

İki farklı değeri birbiriyle kıyaslamak için kullanılır. Bu operatörlerin en önemli özelliği, işlemin sonucunda bize her zaman Boolean (Mantıksal) bir değer yani sadece True (Doğru) veya False (Yanlış) döndürmeleridir,. Karar alma yapılarında (if-else) sıkça başvurulan operatörlerdir.

  • == (Eşittir): İki değer birbirine eşitse True döndürür,.
  • != (Eşit Değildir): İki değer birbirinden farklıysa True döndürür,.
  • > (Büyüktür) ve < (Küçüktür),.
  • >= (Büyük Eşittir) ve <= (Küçük Eşittir),.

Kritik Uyarı (= vs ==): Programlamaya yeni başlayanların en sık yaptığı hata atama operatörü = ile karşılaştırma operatörü == işaretini birbirine karıştırmaktır. = işareti bir değişkene değer atamak için kullanılırken, == işareti iki değerin birbirine eşit olup olmadığını sorgular ve True/False döndürür.

Örnek Kullanım:

x = 6
y = 4
print(x > y)   # 6, 4'ten büyük mü? Çıktı: True
print(x == y)  # 6, 4'e eşit mi? Çıktı: False
print(x != y)  # 6, 4'e eşit değil mi? Çıktı: True


4. Mantıksal Operatörler (Logical Operators)

“Ve”, “veya”, “değil” gibi ifadelerle birden fazla mantıksal koşulu tek bir satırda değerlendirmemizi sağlarlar,.

  • and (Ve) Operatörü: İki veya daha fazla koşulun tümünün doğru olduğu durumlardaTrue sonucunu verir,.
    • Günlük Hayat Örneği: Makarna yapmak için su, tuz ve makarna gerekir. Bunlardan herhangi biri eksik olursa (biri bile False ise) makarna yapılamaz.
  • or (Veya) Operatörü: İki veya daha fazla koşuldan en az birinin doğru olmasıTrue sonucu üretmek için yeterlidir,.
    • Günlük Hayat Örneği: Bir havuzu boşaltmak için kırmızı, yeşil ve mavi renkte üç farklı musluğumuz olsun. Havuzun boşalması için bu musluklardan kırmızı veya yeşil olanını açmamız (sadece birinin True olması) yeterli olacaktır.
  • not (Değil) Operatörü: Mantıksal bir durumu tersine çevirir. Sonucu doğru olan bir ifadeyi yanlışa (False), yanlış olan bir ifadeyi ise doğruya (True) çevirir,.
    • Günlük Hayat Örneği: Manavdan meyve alırken “Sağlamlarından ver” demek ile “Çürüklerinden verme” demek aynı kapıya çıkar. “Değil” olumsuzluk eki durumu tersine çevirerek istediğimiz sonucu verir.

Örnek Kullanım:

a = 5
b = 3
# 5, 3'ten büyük VE 3, 2'den küçük mü?
# İlk şart True, ancak ikinci şart False olduğu için and operatörü False döndürür.
print(a > b and b < 2) # Çıktı: False

# Aynı örneği or ile yaparsak, ilk şartın True olması yeterli olacaktır.
print(a > b or b < 2)  # Çıktı: True


5. Kimlik Operatörleri (Identity Operators)

Python’da is ve is not olarak kullanılan bu operatörler, değişkenlerin değerlerini karşılaştırmak yerine, nesnelerin bellekteki adreslerini (kimlik numaralarını) karşılaştırır. Python’da her verinin bellekte tutulduğu bir adresi vardır ve bu adres id() fonksiyonu ile öğrenilebilir. İki değişken birebir aynı bellek adresini paylaşıyorsa is operatörü True döndürür.


6. İşlem Önceliği (Operator Precedence)

Tıpkı matematikte olduğu gibi Python’da da operatörlerin belli bir çalışma sırası (önceliği) vardır. Kodlarınızın karmaşıklaşması durumunda hangi işlemin önce yapılacağını bilmek, mantıksal (bug) hataların önüne geçer.

Python’daki işlem önceliği sıralaması (en yüksekten en düşüğe doğru) şu şekildedir,:

  1. Parantez İçi: ()
  2. Üs Alma: **
  3. Çarpma, Bölme, Tam Bölme, Mod Alma: *, /, //, %,
  4. Toplama ve Çıkarma: +, -

Aynı önceliğe sahip işlemler (üs alma hariç) yan yana geldiğinde, Python okumaya soldan sağa doğru devam eder (İngilizcede Associativity denir).

Örnek Soru: 10 + 4 * 3 / 12 işleminin sonucu nedir? Öncelik kuralları gereği önce çarpma ve bölme yapılır (soldan sağa): 4 * 3 = 12. Ardından 12 / 12 = 1.0 (Bölme işlemi daima float üretir). En son toplama yapılır: 10 + 1.0 = 11.0 sonucu elde edilir.

Tavsiye: Operatör önceliği kurallarını akılda tutmak bazen zor olabilir. Hem kodun okunabilirliğini artırmak hem de kafa karışıklığını gidermek için işlemlerinizi her zaman parantez () içerisine almak en iyi programlama pratiklerinden biridir.

Sonuç: Python operatörleri, yazdığınız bir programın matematiksel zekasını ve karar verme mekanizmasını oluşturur. Aritmetik hesaplamalarla veriyi işler, atama operatörleriyle bunları belleğe kaydeder ve mantıksal/karşılaştırma operatörleriyle uygulamanıza zeki bir rota çizersiniz. Bu rehberdeki örnekleri kendi bilgisayarınızdaki (IDE) çalışma ortamınızda bol bol test ederek operatörlerin gücünü keşfedebilirsiniz!

Etiketlendi:

Cevap bırakın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir