Operatörler
Python'daki operatörler, belirli bir işlemi gerçekleştirmek için kullanılan özel sembollerdir. İki veya daha fazla değer (veya değişken) üzerinde bir işlem gerçekleştirebilirler. Python'da çeşitli türlerde operatörler vardır:
1. Aritmetik Operatörler: Bu operatörler, matematiksel işlemleri gerçekleştirmek için kullanılır.
- `+` : Toplama: İki sayıyı toplar.
- `-` : Çıkarma: İkinci sayıyı ilk sayıdan çıkarır.
- `*` : Çarpma
- `/` : Bölme : İlk sayıyı ikinci sayıya böler. Sonuç bir float (ondalık) sayı olur.
- `%` : Modulo (kalanı bulma): İlk sayının, ikinci sayıya bölünmesi durumunda kalanı döndürür.
- `**` : Üs: İlk sayının ikinci sayıya göre kuvvetini hesaplar.
- `//` : Tam sayı bölme (sonuç tam sayı olacak şekilde bölme)
a = 5 b = 2 print(a + b) # 7 a = 5 b = 2 print(a - b) # 3 a = 5 b = 2 print(a * b) # 10 a = 5 b = 2 print(a / b) # 2.5 a = 5 b = 2 print(a % b) # 1 a = 5 b = 2 print(a ** b) # 25 a = 5 b = 2 print(a // b) # 2
Bu operatörler, Python'da çok çeşitli matematiksel hesaplamalar yapmak için kullanılır. Bunlar ayrıca stringlerle de çalışabilir (sadece toplama ve çarpma için), bu durumda toplama operatörü iki string'i birleştirir ve çarpma operatörü bir string'i belirli bir sayıda tekrarlar.
2. Karşılaştırma Operatörleri: Bu operatörler, iki değeri karşılaştırmak için kullanılır. Sonuç genellikle bir boolean değerdir (`True` veya `False`).
- `==` : Eşit
- `!=` : Eşit değil
- `<` : Küçük
- `>` : Büyük
- `<=` : Küçük eşit
- `>=` : Büyük eşit
a = 5
b = 2
print(a == b) # False
a = 5
b = 2
print(a != b) # True
a = 5
b = 2
print(a < b) # False
a = 5
b = 2
print(a > b) # True
a = 5
b = 2
print(a <= b) # False
a = 5
b = 2
print(a >= b) # True
Bu operatörler, Python'daki if ifadeleri ve döngüler gibi kontrol akışı ifadelerinde sıklıkla kullanılır. Ayrıca, bir programın belirli bir işlemi gerçekleştirmesi gerekip gerekmediğine karar vermek için de kullanılırlar.
3. Mantıksal Operatörler: Bu operatörler, genellikle boolean değerleri (`True` ve `False`) işlemek için kullanılır.
- `and` : Ve
- `or` : Veya
- `not` : Değil
a = True b = False print(a and b) # False a = True b = False print(a or b) # True a = True print(not a) # False
Truth Tables:
Mantıksal operatörlerin işleyişi genellikle mantıksal tablolar (truth tables) kullanılarak gösterilir. Python'da kullanılan and, or ve not operatörlerinin mantıksal tabloları aşağıda gösterilmektedir:
1. and Operatörü
A | B | A and B |
---|---|---|
True | True | True |
True | False | False |
False | True | False |
False | False | False |
and operatörü, her iki ifadenin de True olması durumunda True döndürür. Diğer tüm durumlarda False döndürür.
2. or Operatörü
A | B | A or B |
---|---|---|
True | True | True |
True | False | True |
False | True | True |
False | False | False |
or operatörü, ifadelerden en az biri True ise True döndürür. İki ifade de False olduğunda False döndürür.
3. not Operatörü
A | not A |
---|---|
True | False |
False | True |
not operatörü, ifadenin tersini döndürür. Yani, ifade True ise False, False ise True döndürür.
Bu mantıksal tablolar, mantıksal operatörlerin nasıl çalıştığını anlamak için kullanılır ve bu operatörlerin kodunuzda ne zaman ve nasıl kullanılacağını belirlemenize yardımcı olur.
4. Atama Operatörleri: Bu operatörler, değişkenlere değer atamak için kullanılır.
- `=` : Atama
- `+=` : Toplama ve atama
- `-=` : Çıkarma ve atama
- `*=` : Çarpma ve atama
- `/=` : Bölme ve atama
- `%=` : Modulo ve atama
- `**=` : Üs ve atama
- `//=` : Tam sayı bölme ve atama
# Basit Atama Operatörü a = 5 # a'nın değeri 5 oldu print("a =", a) # += Atama Operatörü a += 2 # a'nın yeni değeri 5 + 2 = 7 print("a =", a) # -= Atama Operatörü a -= 2 # a'nın yeni değeri 7 - 2 = 5 print("a =", a) # *= Atama Operatörü a *= 2 # a'nın yeni değeri 5 * 2 = 10 print("a =", a) # /= Atama Operatörü a /= 2 # a'nın yeni değeri 10 / 2 = 5.0 print("a =", a) # %= Atama Operatörü a %= 3 # a'nın yeni değeri 5.0 % 3 = 2.0 print("a =", a) # **= Atama Operatörü a **= 2 # a'nın yeni değeri 2.0 ** 2 = 4.0 print("a =", a) # //= Atama Operatörü a //= 2 # a'nın yeni değeri 4.0 // 2 = 2.0 print("a =", a)
Bu kod, a değişkenine başlangıçta 5 değerini atar. Daha sonra, değişik atama operatörleri kullanarak a'nın değerini günceller ve her adımda güncellenmiş değeri ekrana yazdırır. Kodu çalıştırdığınızda, her atama operatörünün a değişkenini nasıl güncellediğini görebilirsiniz.
5. Bitwise Operatörleri: Bu operatörler, bit düzeyinde işlemler gerçekleştirmek için kullanılır.
- `&` : Bitwise ve : Her iki bit de 1 olduğunda 1 döndürür.
- `|` : Bitwise veya : Bitlerden en az biri 1 olduğunda 1 döndürür.
- `^` : Bitwise xor: Bitlerden sadece biri 1 olduğunda 1 döndürür.
- `~` : Bitwise değil : Bit değerini tersine çevirir, 1'i 0'a, 0'ı 1'e çevirir.
- `<<` : Sol shift : Bitleri sola kaydırır ve sağdan 0'larla doldurur.
- `>>` : Sağ shift: Bitleri sağa kaydırır ve soldan önceki en yüksek bit ile doldurur.
# Bitwise Operatörleri a = 10 # 10 = 1010 in binary b = 4 # 4 = 0100 in binary # Bitwise AND (&) print("a & b =", a & b) # 0 = 0000 in binary # Bitwise OR (|) print("a | b =", a | b) # 14 = 1110 in binary # Bitwise XOR (^) print("a ^ b =", a ^ b) # 14 = 1110 in binary # Bitwise NOT (~) print("~a =", ~a) # -11 = -(1010 + 1) in binary # Bitwise Left Shift (<<) print("a << 1 =", a << 1) # 20 = 10100 in binary # Bitwise Right Shift (>>) print("a >> 1 =", a >> 1) # 5 = 101 in binary
Bitwise operatörler genellikle düşük seviye işlemler, grafik, oyunlar ve bazı özel durumlarda kullanılır.
6. Üyelik Operatörleri: Bu operatörler, bir değerin başka bir değerin içinde olup olmadığını kontrol etmek için kullanılır.
- `in` : İçinde : Eğer belirtilen değer, belirtilen koleksiyonun bir üyesi ise True döndürür.
- `not in` : İçinde değil : Eğer belirtilen değer, belirtilen koleksiyonun bir üyesi değilse True döndürür.
# Üyelik Operatörleri liste = ['elma', 'muz', 'karpuz'] # in operatörü print('muz' in liste) # True, çünkü 'muz' listede mevcut # not in operatörü print('ananas' not in liste) # True, çünkü 'ananas' listede mevcut değil
7. Kimlik Operatörleri: Bu operatörler, iki değerin aynı objeyi gösterip göstermediğini kontrol eder.
- `is` : Aynı obje : Eğer iki değişken aynı objeyi (aynı hafıza konumunu) gösteriyorsa True döndürür.
- `is not` : Aynı obje değil: Eğer iki değişken aynı objeyi (aynı hafıza konumunu) göstermiyorsa True döndürür.
# Kimlik Operatörleri a = [1, 2, 3] b = a # a ve b aynı listeyi gösterir c = [1, 2, 3] # c, aynı değerlere sahip yeni bir liste # is operatörü print(a is b) # True, çünkü a ve b aynı objeyi gösteriyor print(a is c) # False, çünkü a ve c aynı değerlere sahip olsalar bile aynı objeyi göstermiyorlar # is not operatörü print(a is not b) # False, çünkü a ve b aynı objeyi gösteriyor print(a is not c) # True, çünkü a ve c aynı objeyi göstermiyorlar
Bu tür operatörler genellikle hafıza yönetimi ve optimizasyonu ile ilgilenen daha düşük seviye kodlarda kullanılır.
8. diziler (sequence) operatörler:
Python'da, diziler (sequence) üzerinde çalışmak için çeşitli operatörler kullanılabilir. Bu operatörler, dizinlenmiş veri türlerini (örneğin listeler, dizeler ve demetler) işlemek için kullanılır.
[]: İndeks operatörü. Bir dizi içindeki belirli bir öğeyi seçer.
+: Birleştirme operatörü. İki diziyi birleştirir.
*: Tekrarlama operatörü. Bir diziyi belirli bir sayıda tekrarlar.
in: Üyelik operatörü. Bir öğenin belirli bir dizide olup olmadığını kontrol eder.
not in: Üyelik operatörü. Bir öğenin belirli bir dizide olup olmadığını kontrol eder.
[:] Dilimleme operatörü. Bir dizinin bir bölümünü seçer.
len(): Dizi uzunluğu. Bir dizinin uzunluğunu (öğe sayısını) döndürür.
Aşağıda bu operatörlerin kullanıldığı bir Python kodu örneği bulunmaktadır:
# Sequence Operators liste = [1, 2, 3, 4, 5] # Indexing print("Indexing:", liste[0]) # 1 # Concatenation print("Concatenation:", liste + [6, 7, 8]) # [1, 2, 3, 4, 5, 6, 7, 8] # Repetition print("Repetition:", liste * 2) # [1, 2, 3, 4, 5, 1, 2, 3, 4, 5] # Membership print("Membership (in):", 3 in liste) # True print("Membership (not in):", 6 not in liste) # True # Slicing print("Slicing:", liste[1:4]) # [2, 3, 4] print("Slicing:", liste[1:]) # [2, 3, 4,5] # Length print("Length:", len(liste)) # 5
Her operatörün nasıl kullanılacağı, hangi türdeki değerlerle çalışacağı ve hangi sonuçları döndüreceği, operatörün türüne bağlıdır. Python'daki operatörlerin doğru kullanımını öğrenmek, Python programlama dilinde yetkinlik kazanmanın önemli bir parçasıdır.
0 Comments
Recommended Comments
There are no comments to display.