İçeriğe geç
Educora
Başlangıç15 dk2 / 42

Değişkenler, veri türleri ve aritmetik

Değerleri değişkenlerde sakla, temel veri türleriyle tanış, hesaplamalar yap ve bir türü diğerine dönüştür.

Kendini test et
Bu derste öğreneceklerin
  • Değişken oluşturmak ve değerini güncellemek
  • int, float, str ve bool türlerini ayırt etmek
  • Tam sayı bölmesi ve kalan dahil aritmetik işleçleri kullanmak
  • Değerleri int(), float() ve str() ile dönüştürmek

Bir oyunda puan topluyorsun: önce 0, sonra 10, sonra 25. Programın bu sayıyı bir yerde hatırlaması ve her seferinde güncellemesi gerekir. İşte bunun için değişkenler kullanılır. Değişkeni üzerinde etiket olan bir kutu gibi düşün: içine bir değer koyarsın, sonra onu adıyla bulup bakar ya da değiştirirsin.

Değişkenler

Tanım
Değişken

Bellekte saklanan bir değere verilen ad. Değişken = işaretiyle oluşturulur: solda ad, sağda değer yazılır.

Python
name = 'Murad'
age = 14
height = 1.62
print(name, age, height)

age = age + 1
print('Next year:', age)
▸ Beklenen çıktı
Murad 14 1.62
Next year: 15

Dikkat: programlamada = matematikteki eşittir işareti değil, atama işlemidir. age = age + 1 satırı şöyle okunur: “age'in eski değerini al, 1 ekle ve sonucu yeniden age'e yaz”. Değişkenin değeri her an değişebilir; adı da buradan gelir.

  • Ad harf, rakam ve alt çizgi (_) içerebilir ama rakamla başlayamaz: score2 olur, 2score olmaz.
  • Adda boşluk olamaz. Kelimeleri alt çizgiyle birleştir: first_name, total_price.
  • Büyük-küçük harf fark eder: age ve Age iki ayrı değişkendir.
  • Python'un ayrılmış sözcükleri (if, for, class, True vb.) ad olarak kullanılamaz.
  • Anlamlı adlar seç: price, x'ten çok daha fazlasını anlatır.

Temel veri türleri

Her değerin bir türü vardır ve tür, o değerle ne yapılabileceğini belirler: sayılar toplanabilir, karakter dizileri birleştirilebilir. Python türü kendisi belirler; ayrıca yazman gerekmez.

TürNedirÖrnekler
inttam sayı14, -3, 2026
floatondalıklı sayı1.62, 3.14, -0.5
strkarakter dizisi (metin)'Baku', '42'
boolmantıksal değerTrue, False

Bir değerin türünü type() fonksiyonuyla kontrol edebilirsin.

Python
print(type(14))
print(type(1.62))
print(type('Baku'))
print(type(True))
print(type('42'))
▸ Beklenen çıktı
<class 'int'>
<class 'float'>
<class 'str'>
<class 'bool'>
<class 'str'>

Son satıra dikkat et: '42' tırnak içinde olduğu için sayı değil, karakter dizisidir. True ve False ise “evet” ve “hayır” cevaplarıdır; koşullar dersinde bunlara çok ihtiyacın olacak.

Aritmetik işlemler

İşleçİşlemÖrnekSonuç
+toplama7 + 29
-çıkarma7 - 25
*çarpma7 * 214
/bölme7 / 23.5
//tam sayı bölmesi7 // 23
%bölümden kalan (mod)7 % 21
**üs alma7 ** 249

Leyla tanesi 2,5 manat olan 3 defter alıyor. Hesabı Python'a yaptıralım ve diğer işlemleri de deneyelim.

Python
price = 2.5
count = 3
total = price * count
print('Total:', total)

print(17 // 5, 17 % 5)
print(2 ** 10)
print(2 + 3 * 4, (2 + 3) * 4)
▸ Beklenen çıktı
Total: 7.5
3 2
1024
14 20

Python, matematikteki işlem önceliğine uyar: önce üs alma, sonra *, /, //, %, en son da + ve -. Sırayı değiştirmek için parantez kullan: 2 + 3 * 4 14 verir, (2 + 3) * 4 ise 20.

Örnek: dakikayı saate çevirmek

Bir film 135 dakika sürüyor. Bu kaç saat kaç dakikadır?

Çözümü göster
Tam saatleri // ile buluruz: 135 // 60 = 2.
Kalan dakikaları % ile buluruz: 135 % 60 = 15.
Cevap: 2 saat 15 dakika.
Python
minutes = 135
hours = minutes // 60
rest = minutes % 60
print(hours, 'h', rest, 'min')
▸ Beklenen çıktı
2 h 15 min

Bir değişkeni kendi değerine göre güncellemek o kadar sık gerekir ki Python'da bunun kısa bir yazımı vardır: score += 10, score = score + 10 ile aynı anlama gelir. -=, *= ve /= de aynı şekilde çalışır.

Python
score = 0
score += 10
score += 5
score -= 3
score *= 2
print('Score:', score)
▸ Beklenen çıktı
Score: 24

Tür dönüşümü

Bir sayıyı karakter dizisiyle doğrudan toplayamazsın: '5' + 5 yazarsan Python TypeError hatası verir, çünkü metinle sayıyı nasıl birleştireceğini bilmez. Böyle durumlarda değeri istediğin türe dönüştürmelisin: int() tam sayıya, float() ondalıklı sayıya, str() ise karakter dizisine çevirir.

Python
text = '25'
number = int(text)
print(number + 5)
print(text + '5')
print(float('3.5') * 2)
print('Age: ' + str(14))
print(int(7.9))
▸ Beklenen çıktı
30
255
7.0
Age: 14
7

text + '5' iki karakter dizisini yan yana eklediği için 255 elde edilir; bu, iki yüz elli beş sayısı değil, 2, 5 ve 5 karakterlerinden oluşan bir metindir.

Alıştırma

Bir oda dikdörtgen şeklindedir: width = 7, height = 4 (metre cinsinden). Alanı area değişkenine, çevreyi perimeter değişkenine kaydet, ardından iki satır yazdır: alanla birlikte Area:, çevreyle birlikte Perimeter:.

Alıştırma · Python
width = 7
height = 4
# area = ...
# perimeter = ...
# print Area: and Perimeter:
▸ Beklenen çıktı
Area: 28
Perimeter: 22
Alıştırma

47 şeker 6 çocuk arasında eşit olarak paylaştırılıyor. Sayılar karakter dizisi olarak verilmiş ('47' ve '6'). Onları int() ile sayıya çevir, ardından iki satır yazdır: Each child: ve her çocuğa düşen şeker sayısı, Left over: ve artan şekerler.

Alıştırma · Python
candies_text = '47'
children_text = '6'
# 1) convert both strings to int
# 2) print Each child: and the share (use //)
# 3) print Left over: and the rest (use %)
▸ Beklenen çıktı
Each child: 7
Left over: 5

Önemli noktalar

  • Değişken, bir değere verilen addır ve = (atama) ile oluşturulur.
  • Temel türler int, float, str ve bool'dur; bir değerin türünü type() gösterir.
  • / her zaman float verir; // bölümün tam kısmını, % ise kalanı hesaplar.
  • x += 1, x = x + 1 ifadesinin kısa yazımıdır.
  • int(), float() ve str() bir değeri başka türe dönüştürür; int() ondalık kısmı atar.

Kendini test et

10 soru. Her doğru cevap XP kazandırır.

1 / 10
Önce x = 5, sonra x = x + 2 yazılıyor. print(x) ne gösterir?