Python Değişkenler ve Veri Tipleri

Python’da değişken kavramını ve temel veri tipleri olan int, float, string ve boolean yapılarını sade örneklerle öğrenin.

Harika bir konu! Python'da değişkenler ve veri tipleri programlamanın temelini oluşturur. Gelin bunları adım adım inceleyelim. --- ## Python'da Değişken Kavramı Bir değişkeni, programlama dünyasında verileri sakladığımız "kutular" veya "etiketli hafıza alanları" olarak düşünebiliriz. Her bir kutunun (değişkenin) bir adı (etiketi) vardır ve bu kutunun içine istediğimiz veriyi (sayı, metin, doğru/yanlış gibi) koyabiliriz. Python'da değişkenler oldukça esnek ve dinamiktir. **Değişkenlerin Özellikleri ve Nasıl Kullanılırlar:** 1. **Atama (`=` Operatörü):** Bir değişkene değer atamak için eşittir (`=`) işaretini kullanırız. Sol tarafta değişkenin adı, sağ tarafta ise değeri bulunur. ```python # 'yas' adında bir değişkene 30 değerini atadık yas = 30 print(yas) # Çıktı: 30 # 'isim' adında bir değişkene "Python" metnini atadık isim = "Python" print(isim) # Çıktı: Python ``` 2. **Değişken Adları:** Değişken adları anlamlı olmalı ve bazı kurallara uymalıdır: * Harfle veya alt çizgi (`_`) ile başlamalıdır. Sayı ile başlayamaz. * Harfler, sayılar ve alt çizgiden oluşabilir. * Büyük/küçük harf duyarlıdır (örn: `sayi` ve `Sayi` farklı değişkenlerdir). * Python'ın ayrılmış kelimeleri (keyword'leri) kullanılamaz (örn: `if`, `for`, `while`). 3. **Dinamik Tiplendirme:** Python, C++ veya Java gibi dillerden farklı olarak, bir değişkene değer atadığınızda onun veri tipini (sayı mı, metin mi vb.) otomatik olarak belirler. Sizin açıkça tipi belirtmenize gerek yoktur. ```python x = 10 # x bir tam sayıdır (int) print(type(x)) # Çıktı: <class 'int'> x = "Merhaba" # Şimdi x bir metin (string) oldu print(type(x)) # Çıktı: <class 'str'> ``` Bu özellik, Python'ı hızlı prototipleme ve yazım kolaylığı açısından avantajlı kılar. 4. **Değer ve Tip Değişimi:** Bir değişkene farklı bir değer veya farklı bir tipte değer atayabilirsiniz. ```python sayac = 0 print(sayac) # Çıktı: 0 sayac = sayac + 1 # Değişkenin değeri arttırıldı print(sayac) # Çıktı: 1 mesaj = "Hoş geldiniz" print(mesaj) # Çıktı: Hoş geldiniz mesaj = 12345 # Mesaj değişkeninin tipi bile değişebilir! print(mesaj) # Çıktı: 12345 ``` **Neden Değişkenlere İhtiyacımız Var?** * **Veriyi Saklamak:** Programlarımızda kullanacağımız bilgileri geçici veya kalıcı olarak tutmamızı sağlar. * **Yeniden Kullanım:** Aynı veriyi birden fazla yerde kullanmak istediğimizde, sadece değişken adını yazarak erişebiliriz. * **Okunabilirlik:** Anlamlı değişken adları kullanarak kodumuzun ne yaptığını daha kolay anlamamızı sağlar. * **Esneklik:** Program çalışırken değerleri değiştirebilme yeteneği sunar. --- ## Veri Tipleri (Data Types) Python'da birçok farklı veri tipi bulunur, ancak en temel ve sık kullanılanları şunlardır: `int`, `float`, `string` (str) ve `boolean` (bool). Her biri farklı türdeki bilgileri depolamak için kullanılır. ### 1. `int` (Integer - Tam Sayı) * **Tanım:** Ondalıklı kısmı olmayan pozitif veya negatif tam sayılardır. * **Örnekler:** Yaş, adet, puan, sıra numarası gibi değerler için kullanılır. ```python # Pozitif tam sayı sayi1 = 100 print(f"sayi1: {sayi1}, Tipi: {type(sayi1)}") # Çıktı: sayi1: 100, Tipi: <class 'int'> # Negatif tam sayı sayi2 = -25 print(f"sayi2: {sayi2}, Tipi: {type(sayi2)}") # Çıktı: sayi2: -25, Tipi: <class 'int'> # Sıfır sayi3 = 0 print(f"sayi3: {sayi3}, Tipi: {type(sayi3)}") # Çıktı: sayi3: 0, Tipi: <class 'int'> # Büyük bir tam sayı buyuk_sayi = 9876543210 print(f"buyuk_sayi: {buyuk_sayi}, Tipi: {type(buyuk_sayi)}") # Çıktı: buyuk_sayi: 9876543210, Tipi: <class 'int'> ``` ### 2. `float` (Floating-Point Number - Ondalıklı Sayı) * **Tanım:** Ondalıklı kısmı olan (nokta ile ayrılmış) pozitif veya negatif sayılardır. * **Örnekler:** Fiyat, boy, sıcaklık, oran gibi değerler için kullanılır. ```python # Pozitif ondalıklı sayı pi_degeri = 3.14159 print(f"pi_degeri: {pi_degeri}, Tipi: {type(pi_degeri)}") # Çıktı: pi_degeri: 3.14159, Tipi: <class 'float'> # Negatif ondalıklı sayı sicaklik = -4.5 print(f"sicaklik: {sicaklik}, Tipi: {type(sicaklik)}") # Çıktı: sicaklik: -4.5, Tipi: <class 'float'> # Ondalıklı kısmı sıfır olsa bile Python bunu float olarak algılar fiyat = 19.0 print(f"fiyat: {fiyat}, Tipi: {type(fiyat)}") # Çıktı: fiyat: 19.0, Tipi: <class 'float'> # Bilimsel gösterim kucuk_sayi = 1.2e-5 # 0.000012 anlamına gelir print(f"kucuk_sayi: {kucuk_sayi}, Tipi: {type(kucuk_sayi)}") # Çıktı: kucuk_sayi: 1.2e-05, Tipi: <class 'float'> ``` ### 3. `str` (String - Karakter Dizisi) * **Tanım:** Metinsel verileri, yani karakterlerden oluşan dizileri temsil eder. Tek tırnak (`'...'`), çift tırnak (`"..."`) veya üçlü tırnak (`'''...'''` veya `"""..."""`) arasına yazılırlar. * **Örnekler:** İsim, adres, mesaj, cümle gibi metinler için kullanılır. ```python # Tek tırnak ile string ad = 'Mehmet' print(f"ad: {ad}, Tipi: {type(ad)}") # Çıktı: ad: Mehmet, Tipi: <class 'str'> # Çift tırnak ile string (genellikle tercih edilir) soyad = "Yılmaz" print(f"soyad: {soyad}, Tipi: {type(soyad)}") # Çıktı: soyad: Yılmaz, Tipi: <class 'str'> # Üçlü tırnak ile çok satırlı string siir = """Güneş doğar, Kuşlar uçar, Hayat devam eder.""" print(f"siir:\n{siir}, Tipi: {type(siir)}") # Çıktı: siir: # Güneş doğar, # Kuşlar uçar, # Hayat devam eder., Tipi: <class 'str'> # Sayılar da tırnak içinde olursa string olur telefon_no = "555-123-4567" print(f"telefon_no: {telefon_no}, Tipi: {type(telefon_no)}") # Çıktı: telefon_no: 555-123-4567, Tipi: <class 'str'> # String birleştirme (concatenation) tam_ad = ad + " " + soyad print(f"tam_ad: {tam_ad}, Tipi: {type(tam_ad)}") # Çıktı: tam_ad: Mehmet Yılmaz, Tipi: <class 'str'> ``` ### 4. `bool` (Boolean - Mantıksal) * **Tanım:** Sadece iki olası değeri olan özel bir veri tipidir: `True` (Doğru) veya `False` (Yanlış). Genellikle koşullu ifadelerde ve mantıksal işlemlerde kullanılır. * **Örnekler:** Bir durumun aktif olup olmadığı, bir koşulun sağlanıp sağlanmadığı gibi ikili seçimler için kullanılır. (Büyük harfle başlamalarına dikkat edin!) ```python # Doğru değeri is_aktif = True print(f"is_aktif: {is_aktif}, Tipi: {type(is_aktif)}") # Çıktı: is_aktif: True, Tipi: <class 'bool'> # Yanlış değeri is_admin = False print(f"is_admin: {is_admin}, Tipi: {type(is_admin)}") # Çıktı: is_admin: False, Tipi: <class 'bool'> # Karşılaştırma operatörlerinin sonucu bool tipindedir sayi = 20 buyuk_mu = (sayi > 15) # 20, 15'ten büyük mü? Evet, True. print(f"buyuk_mu: {buyuk_mu}, Tipi: {type(buyuk_mu)}") # Çıktı: buyuk_mu: True, Tipi: <class 'bool'> kucuk_mu = (sayi < 10) # 20, 10'dan küçük mü? Hayır, False. print(f"kucuk_mu: {kucuk_mu}, Tipi: {type(kucuk_mu)}") # Çıktı: kucuk_mu: False, Tipi: <class 'bool'> ``` --- Bu temel kavramlar, Python programlama yolculuğunuzda karşılaşacağınız her şeyin yapı taşlarıdır. Değişkenleri ve veri tiplerini iyi anlamak, daha karmaşık programlar yazabilmek için kritik öneme sahiptir.