Python'da her değişkenin bir veri tipi vardır — bu tip, o değişkenle hangi işlemleri yapabileceğinizi belirler. Bu derste en temel veri tiplerini ele alacağız.
Sayısal Veri Tipleri: int ve float
Python'da iki temel sayısal tip vardır:
tam_sayi = 10 # int (integer) — ondalıksız tam sayı
ondalikli_sayi = 10.4 # float — ondalıklı sayı
Python, bir sayıyı yazış şeklinize göre tipini otomatik belirler — 10 yazarsanız int, 10.4 yazarsanız float olur. Bunu doğrulamak için type() fonksiyonunu kullanabilirsiniz:
print(type(10)) # <class 'int'>
print(type(10.4)) # <class 'float'>
Tip Dönüşümü (Type Casting)
Bir web sayfasından çektiğiniz veri genelde metin (str) olarak gelir — üzerinde matematiksel işlem yapmak için önce sayıya çevirmeniz gerekir:
metin_sayi = "10.4"
sayi = float(metin_sayi)
print(sayi * 5) # 52.0
int("10.4") yazarsanız hata alırsınız — çünkü "10.4" bir tam sayıya dönüştürülemez (ondalık kısmı vardır). Ama int("10") sorunsuz çalışır.
Metinsel Veri Tipi: str
isim = "Ahmet"
Metinleri + operatörüyle birleştirebilirsiniz, ama yalnızca iki metni birbirine ekleyebilirsiniz — bir metni doğrudan bir sayıyla toplayamazsınız:
print("Ahmet" + " " + "24") # çalışır: "Ahmet 24"
print("Ahmet" + 24) # hata: str ve int toplanamaz
Bu durumda sayıyı önce str(24) ile metne çevirmeniz gerekir.
Mantıksal Veri Tipi: bool
dogru_mu = True
yanlis_mi = False
bool, yalnızca True veya False değerlerini alabilir. Bir veritabanında bu tip çok az yer kaplar (arka planda 1/0 olarak saklanır), bu yüzden "aktif mi/pasif mi" gibi ikili durumları saklamak için tercih edilir.
Liste Veri Tipi: list
liste = [1, 2, 3, 4, 5]
print(liste[0]) # 1 -- indeks 0'dan başlar
Listelerin ilk elemanı 0 indeksindedir, ikinci eleman 1 indeksindedir ve bu şekilde devam eder — bu, birçok programlama dilinde ortak bir kuraldır.
Sözlük Veri Tipi: dict
sozluk = {"anahtar1": "Ahmet", "anahtar2": "Mehmet"}
print(sozluk["anahtar1"]) # Ahmet
Sözlükler, listelerin aksine sayısal indeks yerine anahtar (key) üzerinden erişim sağlar — bir API'den gelen JSON verisi genelde bu yapıya birebir karşılık gelir.
Sırada Ne Var?
Sırada, listeleri (array'leri) daha detaylı ele alıp append, iki boyutlu listeler ve dilimleme (slicing) gibi konulara değineceğiz.