Ana Sayfa · Akademi · Robotik ve Kodlama · Python Temelleri · Değişkenler ve Veri Türleri

Değişkenler ve Veri Türleri

Değişken atamayı; int, float, str ve bool türlerini ve tür dönüşümünü öğren.

DERS PUSULASI

Bu sayfayı ne için kullanacaksın?

Ana fikir

Değişken, bir bilgiyi isimlendirip saklayan bir kutudur; bu bilginin türü (sayı, ondalık, metin veya doğru/yanlış) programın onu nasıl kullanacağını belirler.

Üretilecek kanıt

Şimdi öğrendiklerini birleştirelim. Bir kişinin adını ve doğum yılını saklayan, sonra yaşını hesaplayan küçük bir program yazalım. ad = "Doruk" dogum_yili = 2013 guncel_yil = 2026 yas = guncel_yil - dogum_yili print("Ad: " + ad) print("Yaş: " + str(yas)) Çıktı: Ad: Doruk Yaş: 13 Bu programda üç farklı tür bir arada çalışıyor: ad bir str , dogum_yili ve…

Kontrol tuzağı

Tırnak koymayı unutmak ad = Doruk Doruk tırnaksız yazılınca Python onu bir değişken adı sanır ve NameError verir. Metin her zaman tırnak içine alınır: ad = "Doruk" . Metinle sayıyı toplamaya çalışmak yas = 13 print("Yaş: " + yas) Bu satır TypeError verir çünkü metinle sayı doğrudan birleştirilemez. Çözüm: str(yas)…

Sonraki bağlantı

Kullanıcıdan Veri Alma: input() fonksiyonuyla kullanıcıdan bilgi alıp değişkenlere kaydetmeyi ve gelen metni doğru türe çevirmeyi öğreneceğiz.

Modül kaynakları: Python Tutorial · Arduino Learn

SeviyeBaşlangıç
Yaş10–16
Süre25–35 dk
Ön koşulGeliştirme Ortamı ve İlk Program
İçerikStandart ders · 1.328 kelime
Son güncelleme

Bir cümlelik özet

Değişken, bir bilgiyi isimlendirip saklayan bir kutudur; bu bilginin türü (sayı, ondalık, metin veya doğru/yanlış) programın onu nasıl kullanacağını belirler.

Neden önemli?

İlk programında print("Merhaba") yazarak ekrana sabit bir metin yazdırdın. Ama gerçek programlar bilgiyi saklar, değiştirir ve hesaplar. Bir oyun senin puanını tutar, bir uygulama senin adını hatırlar, bir robot mesafe ölçümünü kaydeder.

Bütün bunların temelinde değişken vardır. Değişkenleri ve türlerini anlamadan gerçek bir program yazmak çok zordur. Bu ders, sonraki her dersin üzerine kurulacağı temeli atıyor.

Değişken nedir?

Değişken, bir değere isim veren bir etikettir. Değeri bir kutuya koyduğunu, kutunun üstüne de bir isim yazdığını düşün. Daha sonra o ismi söyleyerek kutunun içindekine ulaşırsın.

Python'da değer atamak için eşittir işaretini (=) kullanırız.

ad = "Doruk"
yas = 13
print(ad)
print(yas)

Bu program şunu yazdırır:

Doruk
13

Buradaki = işareti "eşittir" demek değildir; "sağdaki değeri soldaki isme ata" demektir. Yani yas = 13 cümlesi "yas kutusuna 13 koy" anlamına gelir. Python bu satırları yukarıdan aşağıya, tek tek çalıştırır; bu yüzden bir değişkeni kullanmadan önce ona bir değer atamış olmalısın.

Değeri değiştirmek

Değişkenin adı "değişken" çünkü içindeki değer değişebilir. Yeni bir atama yaptığımızda eski değer silinir.

puan = 0
print(puan)
puan = 10
print(puan)

Ekranda önce 0, sonra 10 görürsün. İkinci satır ilkinin üzerine yazdı.

Anlamlı isimlendirme

Bir değişkene istediğin ismi verebilirsin, ama iyi isimler kodu okunur yapar. x yerine yas, a yerine ogrenci_sayisi yazmak, kodu haftalar sonra bile anlaşılır tutar.

Birkaç kural vardır:

dogum_yili = 2013
guncel_yil = 2026

Türkçe karakter (ç, ş, ğ) çalışır ama karışıklığı önlemek için sade İngilizce harfler tercih edilir. İyi seçilmiş isimler, kodu bir yorum satırı eklemeden bile kendi kendini açıklar hâle getirir.

Temel veri türleri

Her değerin bir türü (İngilizcesi *type*) vardır. Tür, o değerin ne olduğunu ve onunla ne yapabileceğini belirler. Başlangıç için dört tür yeterlidir.

int — tam sayı

int (integer) ondalıksız tam sayıları tutar: 0, 13, -5, 2026.

yas = 13
kalem_sayisi = -4

float — ondalıklı sayı

float ondalıklı (kesirli) sayıları tutar. Ondalık ayırıcı olarak nokta kullanılır, virgül değil.

boy = 1.62
sicaklik = 36.5

str — metin (dizgi)

str (string) metin tutar. Metni tırnak içine alırız; tek ('...') veya çift ("...") tırnak olabilir.

ad = "Doruk"
sehir = 'İzmir'

Dikkat: "13" bir metindir, 13 ise bir sayıdır. Tırnak, değeri metne çevirir.

bool — doğru/yanlış

bool (boolean) yalnız iki değer alır: True (doğru) veya False (yanlış). Baş harfleri büyük yazılır.

sinavi_gecti = True
yagmur_yagiyor = False

bool, sonraki derslerde karar verme (koşullar) için çok işine yarayacak.

Türü öğrenmek: type()

Bir değişkenin türünü merak edersen type() fonksiyonunu kullan.

ad = "Doruk"
yas = 13
boy = 1.62
print(type(ad))
print(type(yas))
print(type(boy))

Çıktı:

<class 'str'>
<class 'int'>
<class 'float'>

type() sana kutunun içindeki değerin türünü söyler. Hata ayıklarken çok yardımcı olur.

Tür dönüşümü

Bazen bir türü başka bir türe çevirmemiz gerekir. Örneğin metin hâlindeki bir sayıyla toplama yapamayız; önce onu sayıya dönüştürmeliyiz. Buna tür dönüşümü denir.

Metni sayıya çevirmek

metin_yas = "13"
sayi_yas = int(metin_yas)
gelecek_yas = sayi_yas + 5
print(gelecek_yas)

Bu program 18 yazdırır. "13" metnini int() ile sayıya çevirmeseydik, üzerine 5 ekleyemezdik.

Sayıyı metne çevirmek

Bir sayıyı bir metinle birleştirmek istersek önce onu str() ile metne çevirmeliyiz.

yas = 13
mesaj = "Yaşım " + str(yas)
print(mesaj)

Çıktı: Yaşım 13. Eğer str(yas) yerine sadece yas yazsaydık, Python metinle sayıyı toplayamadığı için hata verirdi.

Mini uygulama

Şimdi öğrendiklerini birleştirelim. Bir kişinin adını ve doğum yılını saklayan, sonra yaşını hesaplayan küçük bir program yazalım.

ad = "Doruk"
dogum_yili = 2013
guncel_yil = 2026

yas = guncel_yil - dogum_yili

print("Ad: " + ad)
print("Yaş: " + str(yas))

Çıktı:

Ad: Doruk
Yaş: 13

Bu programda üç farklı tür bir arada çalışıyor: ad bir str, dogum_yili ve guncel_yil birer int. Yaşı yazdırırken sonucu str() ile metne çevirdik.

Kendi denemen: ad ve dogum_yili değerlerini kendinle değiştir, programı çalıştır ve doğru yaşı gösterdiğinden emin ol.

Uygulama laboratuvarı: Değişkenler ve Veri Türleri

Değişkenler ve Veri Türleri konusunu kalıcı hâle getirmenin en iyi yolu, kavramı küçük ve ölçülebilir bir göreve dönüştürmektir. Bu çalışmada Değişken nedir? ile Anlamlı isimlendirme arasındaki ilişkiyi kullanarak çalışan kısa bir Python 3 programı, örnek girdiler ve beklenen çıktılar hazırlayacaksın. Amaç yalnız sonucun çalışması değil; hangi kararı neden verdiğini, neyi test ettiğini ve hangi durumda tasarımı değiştireceğini açıklayabilmektir.

Görev senaryosu

Şu senaryoyu ele al: belirli aralıktaki sayıyı tahmin ettiren küçük oyun. Dersin ana hedefi “Değişken atamayı; int, float, str ve bool türlerini ve tür dönüşümünü öğren” olduğuna göre önce problemi tek cümleyle tanımla. Ardından sistemin alacağı girdiyi, uygulayacağı işlemi ve üreteceği çıktıyı ayrı ayrı yaz. Bilmediğin bir ayrıntı varsa onu varsayım olarak işaretle; varsayımı gerçek bilgi gibi kullanma.

  1. Planla: Başlangıç durumunu, beklenen sonucu ve kullanacağın kavramları yaz.
  2. En küçük sürümü kur: Yalnız temel davranışı çalıştır; süsleme ve ek özellikleri sonraya bırak.
  3. Üç test hazırla: Normal bir durum, sınırda bir durum ve hatalı ya da beklenmeyen bir durum seç.
  4. Sonucu kaydet: Beklenen ile gerçekleşeni yan yana yaz; fark varsa olası nedeni belirt.
  5. Tek değişiklik yap: Aynı anda birçok şeyi değiştirmek yerine bir kararı düzeltip testi yeniden çalıştır.

Başarı ölçütleri

“Değişkenler ve Veri Türleri” çalışmasını bitirdiğinde ürünü bir arkadaşına yalnız bölüm başlıklarıyla anlat. Arkadaşın belirli aralıktaki sayıyı tahmin ettiren küçük oyun senaryosundaki adımları ve karar nedenlerini takip edebiliyorsa anlatım yeterince açıktır. Anlaşılmayan noktayı daha fazla terim ekleyerek değil, Değişken nedir? ve Anlamlı isimlendirme ilişkisini daha küçük adımlara bölerek düzelt.

Sık yapılan hatalar

Tırnak koymayı unutmak

ad = Doruk

Doruk tırnaksız yazılınca Python onu bir değişken adı sanır ve NameError verir. Metin her zaman tırnak içine alınır: ad = "Doruk".

Metinle sayıyı toplamaya çalışmak

yas = 13
print("Yaş: " + yas)

Bu satır TypeError verir çünkü metinle sayı doğrudan birleştirilemez. Çözüm: str(yas) kullanmak.

Ondalıkta virgül kullanmak

boy = 1,62 yazmak istediğin sonucu vermez; Python bunu iki ayrı değer sanar. Ondalıkta nokta kullanılır: boy = 1.62.

Karışık isimler seçmek

a, x1, deneme2 gibi isimler kodu okunmaz yapar. yas, dogum_yili gibi anlamlı isimler seç.

Güvenlik notu

Bu ders tamamen kendi bilgisayarında, kendi yazdığın kodla çalışır ve bir tehlike içermez. Yine de iyi bir alışkanlık olarak: yalnız kendi yazdığın veya güvendiğin kodu çalıştır. Ayrıca örneklerde gerçek şifre, adres veya telefon gibi kişisel bilgileri kod içine yazma; öğrenirken takma isim ve örnek değerler kullan.

Ders özeti

Kontrol soruları

  1. puan = 100 satırında = işareti ne anlama gelir?
  2. 1.62 değerinin türü hangisidir: int, float, str, yoksa bool mü?
  3. "7" ile 7 arasındaki fark nedir?
  4. yas = 13 iken print("Yaş: " + yas) neden hata verir ve nasıl düzeltilir?
  5. sinavi_gecti = True değişkeninin türü nedir?

Cevaplar

  1. "Sağdaki değeri soldaki isme ata" anlamına gelir; yani 100 değeri puan değişkenine konur. Matematikteki "eşittir" değildir.
  2. float, çünkü ondalıklı (kesirli) bir sayıdır.
  3. "7" tırnak içinde olduğu için bir metindir (str); 7 ise bir tam sayıdır (int). Metinle aritmetik toplama yapılamaz, önce int("7") ile çevirmek gerekir.
  4. Metin (str) ile sayı (int) doğrudan birleştirilemediği için TypeError verir. Düzeltmek için sayıyı metne çevirmeliyiz: print("Yaş: " + str(yas)).
  5. bool, çünkü değeri True (doğru) veya False (yanlış) olur.

Kaynak ve doğrulama notu

“Değişkenler ve Veri Türleri” dersi için doğrulama odağı Değişken nedir? ile Anlamlı isimlendirme arasındaki ilişkinin örnekler üzerinde tutarlı çalışmasıdır. Kod örnekleri Python 3 sözdizimi esas alınarak hazırlanmıştır. Çalıştırma ortamına göre küçük farklar görülebileceği için örnekler önce güvenli bir çevrim içi editörde veya yerel geliştirme ortamında denenmelidir.

Sonraki ders

Kullanıcıdan Veri Alma: input() fonksiyonuyla kullanıcıdan bilgi alıp değişkenlere kaydetmeyi ve gelen metni doğru türe çevirmeyi öğreneceğiz.

Quiz’i BaşlatPython Temelleri bölümüne dön
SORU HAVUZU

Bu dersi 10 soruyla pekiştir

Bu ders için 20 soruluk bir havuz hazırlandı. Her başlangıçta 10 soru ve seçenekler yeniden karıştırılır.