1) print — terminale yazdırmak
Amaç: Programın içindeki veriyi görmek, kontrol etmek, kullanıcıya bilgi vermek.
Temel kullanım:
print("Merhaba")
print(5 + 3)
print("Sayı:", 7)
Açıklamalar:
print() içine birden fazla şey yazabilirsin; aralarına virgül koyunca Python otomatik
araya boşluk koyar.
print("a", "b") → çıktıda a b olur.
print() satırı tek başına boş satır basar (yeni satır).
İleri ama basit ipuçları:
print("a", "b", "c", sep="-") # a-b-c (sep = ayırıcı)
print("satır1", end=" | ") # satır sonunda normalde \n olur; end ile değiştirebilirsin
print("satır2")
(Not: sep ve end parametreleri print'in sunduğu basit özelliklerdir — ezberlemesi kullanışlı.)
Hatalar sık görülen:
print(Merhaba) # NameError — Merhaba isimli değişken yok
print("Merhaba) # SyntaxError — tırnak kapanmamış
Tkinter karşılığı: ekrana yazmak için Label kullanırız.
import tkinter as tk
p = [Link]()
[Link](p, text="Merhaba").pack()
[Link]()
Bu Label terminaldeki print ile aynı amacı görür: kullanıcıya bilgi göstermek.
2) Değişkenler — veriyi saklamak
Amaç: Programda tekrar kullanmak üzere bilgiyi isim altında saklamak.
Temel atama:
isim = "Gürcan"
yas = 26
puan = 95.5
dogru = True
Kurallar:
Değişken isimleri harf, rakam, alt çizgi içerir; rakamla başlayamaz: 1sayi yanlış.
Küçük/büyük harf farklıdır: sayi ≠ Sayi.
Veri tipi otomatik belirlenir: "metin" → string, 26 → int, 3.14 → float.
Ekrana yazdırma (print ile):
print("İsim:", isim)
print("Yaş:", yas)
Dikkat edilmesi gereken hata türleri:
NameError — değişkene atama yapmadan kullanmak.
print(sayi) # NameError: name 'sayi' is not defined
TypeError — uyumsuz işlemler (string + int gibi).
print("Yaşım: " + yas) # TypeError: can only concatenate str (not "int") to str
Çözüm: print("Yaşım:", yas) veya print("Yaşım: " + str(yas)).
Tkinter ile değişkenin gösterilmesi:
import tkinter as tk
p = [Link]()
isim = "Gürcan"
[Link](p, text=isim).pack()
[Link]()
(Tkinter tarafında text= içine sadece string veya str() ile çevrilmiş şey koy.)
3) Basit kod yazma — işlemler ve atamalar
Toplama, çıkarma, çarpma, bölme:
a = 10
b=3
toplam = a + b # 13
fark = a - b #7
carp = a * b # 30
bol = a / b # 3.333333...
tam_bol = a // b # 3 (tam sayı bölümü)
mod = a % b # 1 (kalan)
pow = a ** 2 # 100 (üs alma)
Ekrana basma:
print("Toplam:", toplam)
Tkinter kart örneği (hesaplama sonucu gösterme):
import tkinter as tk
p = [Link]()
a = 10
b=3
[Link](p, text="Toplam: " + str(a + b)).pack()
[Link]()
4) Tip dönüşümleri — neden lazım?
Kullanıcı girişi veya hesaplamalarda sayıları gerçekten sayı yapman gerekir.
int(), float(), str() en temel.
s = "25"
n = int(s) # 25
f = float("3.14") # 3.14
t = str(10) # "10"
Hata örneği ve çözümü:
s = "on" # "on" int'e dönüştürülemez
n = int(s) # ValueError
Çözüm: doğru formatta string ver, ya da hata kontrolü yap (aşağıda debug bölümünde).
Tkinter notu: Biz fonksiyon/metod kullanmıyoruz ama bilmen için: Entry'den alınan veri string
olur; bunu sayıya çevirirken int() veya float() gerekir. (Siz fonksiyonsuz yaptığınız
uygulamalarda Entry kullanmıyoruz; ama tipi hep aklında tut.)
5) Basit debug — hata bulma ve düzeltme
Programda hata çıktığında panik yok. Adımlar:
1. Traceback oku: Python hangi satırda, hangi hata tipinde olduğunu söyler.
o SyntaxError, NameError, TypeError, ValueError, IndentationError sık
karşılaşılanlar.
2. Hangi değişken / satır?: Hata mesajı satırı veriyor — o satıra bak.
3. Basit print: Hata olan bölgeden önce değişkenleri print ile göstererek kontrol et.
4. print("yas tipi:", type(yas), "değer:", yas)
5. Satır satır çalıştır: kodu küçük parçalara ayır, her parçayı terminalde dene.
6. Tırnak ve parantez kontrolü: birçok SyntaxError eksik " veya ) yüzünden.
7. İsim kontrolü: değişkeni doğru yazdın mı? isim ile İsim farklıdır.
8. Tip kontrolü: string ile sayı toplayamazsın.
Örnek hatalar — göster / düzelt:
Hata:
print("Merhaba)
Çözüm: kapatılmamış tırnağı düzelt → print("Merhaba")
Hata:
yas = input("Yaş: ")
print(yas + 10)
Çözüm: input() string döner, sayı ile toplanamaz. print(int(yas) + 10) veya print(yas, 10).
Hata:
a = 10
b = 5 # başında fazladan boşluk
print(a + b)
Çözüm: girinti (indentation) düzelt.
Tkinter özel notu:
Tkinter kodunda pencereyi göstermek için [Link]() olmalı; bunu unutursan pencere
açılmaz. Hata mesajı vermeyebilir — sadece pencere görünmez. Yine Label(...).pack()
unutursan yazı görünmez.
6) Çok kullanılan örnek kalıplar (hepsi çalışır — kopyala yapıştır)
A) Print + değişken
isim = "Gürcan"
print("İsim:", isim)
B) Basit hesaplama ve ekrana basma (Tkinter)
import tkinter as tk
p = [Link]()
a=7
b=8
[Link](p, text="7 + 8 = " + str(a + b)).pack()
[Link]()
C) Dizgelerle birleştirme (string concat)
ad = "Gürcan"
soyad = "Çarık"
tam = ad + " " + soyad
print(tam)
(Tkinter: [Link](p, text=tam).pack())
7) Hataları daha hızlı çözmek için 5 pratik kural
1. Hata mesajını oku — oradan başla. (Traceback çok yardımcıdır.)
2. En basit örneği çalıştır — örneğin sadece print("merhaba") çalışıyor mu?
3. Değişken tiplerini kontrol et: print(type(x)) ile.
4. Satır satır çalıştır — hangi satır çalışınca hata çıkıyor?
5. Yazım hatalarını kontrol et (boşluk, tırnak, parantez, büyük/küçük harf).
8) Uygulamalı küçük görevler (sen yaz, sonra cevabı kontrol et)
Aşağıdaki soruları önce kendin dene; sonrasında altta cevapları veriyorum.
Soru 1 — Print & Değişken
1-a) isim = "Gürcan" yaz, sonra print ile şu çıktıyı al: Merhaba, ben Gürcan (sadece print
kullanarak).
Soru 2 — İşlem & Tip
2-a) a = 12 ve b = 5. Ekrana 12 / 5 = 2.4 yazdır (sadece atama ve print kullan).
Soru 3 — Hata bulma
3-a) Aşağıdaki kod hatalı. Hatasını bulup düzelt:
isim = Gürcan
print("Adım: " + isim)
9) Cevaplar (kopyala yapıştır çalışır)
Cevap 1:
isim = "Gürcan"
print("Merhaba, ben " + isim) # veya: print("Merhaba, ben", isim)
Cevap 2:
a = 12
b=5
print(str(a) + " / " + str(b) + " = " + str(a / b))
# veya daha kolay:
print(a, "/", b, "=", a / b)
Cevap 3 (düzeltme):
isim = "Gürcan" # tırnak eklenmeli
print("Adım: " + isim)
10) Mini proje: Hakkımda Kartı (tam detay, açıklamalı)
Kopyala-yapıştır ile çalıştır; kod içinde yorumlar var:
import tkinter as tk # Tkinter'ı içe aktar
p = [Link]() # pencere oluştur
[Link]("Hakkımda Kartı") # pencere başlığı
# Değişkenler (bilgiler)
ad = "Gürcan"
yas = 26
meslek = "Siber Güvenlik Öğrencisi"
# Ekrana yazdırma (print versiyonu)
print("Hakkımda:")
print("Ad:", ad)
print("Yaş:", yas)
print("Meslek:", meslek)
# Tkinter ile aynı bilgiyi pencerede gösterme
[Link](p, text="Hakkımda").pack()
[Link](p, text=ad).pack()
[Link](p, text=str(yas)).pack() # sayıyı stringe çevirdik
[Link](p, text=meslek).pack()
[Link]() # pencereyi göster
Not: str(yas) kullanımı sayıyı yazıya çevirme örneğidir — label içine doğrudan sayı yazarsan
bazı durumlarda hata vermez ama güvenli olan str() kullanmak.
Kapanış — Ne yaptık, ne öğrenmelisin şimdi?
print komutunun tüm temel kullanımını gördün (sep, end, çoklu argüman).
Değişken atama ve kullanımı netleşti.
Basit aritmetik ve sonuçları gösterme öğrendin.
En sık çıkan hatalar (NameError, SyntaxError, TypeError, ValueError, IndentationError)
ile nasıl başa çıkılacağını öğrendin.
Hepsinin Tkinter karşılığını gördün — Label ile ekrana yazma pratikleri.