Atama Operatörü Nedir?
İngilizce: Assignment Operator
Yayın: · Son güncelleme:
Atama Operatörü Nedir? Kısaca
Atama operatörü, sağ taraftaki değeri sol taraftaki değişkene kaydeden operatördür. En yaygını tek eşittir işaretidir (`=`); `+=`, `-=` gibi bileşik biçimleri ise hesaplama ile atamayı tek adımda yapar.

Atama operatörü nedir?
Atama operatörü, bir değeri bir değişkene yerleştirmeye yarar. bakiye = 1000 satırında eşittir işareti "1000 değerini bakiye adlı değişkene koy" anlamına gelir. Matematikteki eşitlikten farklıdır: burada iki tarafın eşit olduğu iddia edilmez, sağdaki değer sola aktarılır.
Bu yüzden sayac = sayac + 1 matematikte saçma görünse de programlamada geçerlidir. Program önce sağ tarafı hesaplar, sonra sonucu yine sayac değişkenine yazar.
Bileşik atama operatörleri
Sık yapılan hesap-ve-kaydet işlemleri için kısa yazımlar vardır:
| Operatör | Uzun hâli | Örnek |
|---|---|---|
+= |
x = x + n |
bakiye += 250 |
-= |
x = x - n |
stok -= 1 |
*= |
x = x * n |
fiyat *= 1.2 |
/= |
x = x / n |
pay /= 4 |
Somut bir örnek: bakiyesi 1.000 TL olan hesaba bakiye += 250 ile para yatırılır, ardından bakiye -= 400 ile ödeme yapılır. Son durumda bakiye 850 TL olur. JavaScript, Java ve C'de ayrıca bir artıran ++ ve bir azaltan -- operatörleri de bulunur; Python'da bunlar yoktur.
Eşitlik kontrolüyle karıştırmayın
Atama =, karşılaştırma == ile yapılır. Koşul içinde yanlışlıkla tek eşittir yazmak, C ve JavaScript'te kontrol yerine atama yapar ve koşul beklenmedik biçimde doğru çıkabilir. Python bu hatayı sözdizimi düzeyinde engeller.
Python'un 3.8 sürümüyle gelen := operatörü ise bir ifadenin içinde atama yapmanızı sağlar. Okunabilirliği azaltabildiği için yalnızca kodu gerçekten kısalttığı yerlerde kullanın.
Sıkça Sorulan Sorular
Atama operatörü ile eşitlik operatörü farkı nedir?
Atama operatörü (=) sağdaki değeri soldaki değişkene kaydeder. Eşitlik operatörü (==) ise iki değeri karşılaştırır ve sonucu doğru ya da yanlış olarak döndürür.
Birden fazla değişkene aynı anda değer atanabilir mi?
Birçok dilde evet. Python'da `a = b = 0` iki değişkene sıfır atar, `x, y = 3, 5` ise iki değişkene farklı değerleri tek satırda verir.