İçeriğe geç
Veri Rotası – Veri Bilimi ve Analitiği Rehberiniz
  • Python
  • R Programlama
  • Makine Öğrenmesi
  • Projeler
  • Veri Görselleştirme
Veri Rotası – Veri Bilimi ve Analitiği Rehberiniz
Python

Python Yorum Satırları, Girinti (Indentation) ve Python Yazım Kuralları

Tarafındanhazar 26 Ekim 202626 Ekim 2026

Altı ay önce yazdığın bir kodu açıp “bunu ben mi yazdım?” diye düşündüğün an kaçınılmaz. İşte yorum satırları o an için var. Girinti ise bambaşka bir konu: Python’da kodun nerede başladığını ve nerede bittiğini boşluklar belirliyor ve tek bir fazla boşluk programı durduruyor.

Bu derste Python yorum satırı yazmayı, Python girinti kurallarını ve kodunu düzenli tutmanı sağlayacak yazım standartlarını öğreneceksin. Konu kısa görünüyor ama ilk haftanın hata mesajlarının büyük kısmını önleyecek.

Table of Contents

Toggle
  • Yorum Satırı Nedir?
    • Arka Planda Ne Oldu?
    • VS Code’da Kısayol
  • İyi Yorum Nasıl Yazılır?
  • Çok Satırlı Yorum ve Docstring
  • Girinti (Indentation) Nedir?
    • Arka Planda Ne Oldu?
    • Kaç Boşluk Kullanmalı?
  • Sık Karşılaşılan Girinti Hataları
    • 1. Blok İçin Girinti Unutmak
    • 2. Gereksiz Girinti
    • 3. Tutarsız Girinti Seviyesi
    • 4. Tab ile Boşluğu Karıştırmak
  • Python Yazım Kuralları: Temel Bilgiler
    • Büyük/Küçük Harf Duyarlılığı
    • Satır Sonunda Noktalı Virgül Gerekmez
    • Uzun Satırları Bölmek
    • PEP 8: Python’un Stil Rehberi
  • Uygulama: Hatayı Bul
  • Kontrol Listesi
  • Sıkça Sorulan Sorular
    • Python’da çok satırlı yorum var mı?
    • Girinti için tab mı boşluk mu kullanmalıyım?
    • Girinti hatalarından nasıl kaçınırım?
    • PEP 8’e uymak zorunda mıyım?
  • Sırada Ne Var?

Yorum Satırı Nedir?

Yorum satırı, Python’un tamamen görmezden geldiği açıklama notudur. Sadece insanlar için yazılır: kendin, ekip arkadaşların ya da gelecekteki sen için.

Python’da yorum diyez (#) işaretiyle başlar. Satırda #‘tan sonra gelen her şey yorum sayılır.

Çalışma klasöründe yorumlar.py adında bir dosya aç:

# yorumlar.py

# Bu satır tamamen yorum, Python bunu çalıştırmaz
print("Merhaba")  # Bu da satır sonuna yazılmış bir yorum

# print("Bu satır çalışmaz çünkü başında diyez var")
Merhaba

Arka Planda Ne Oldu?

Python dosyayı satır satır okurken # işaretini görünce o satırın geri kalanını atladı. Yorum satırı belleğe de alınmaz, çalışma hızını da etkilemez. Yani istediğin kadar açıklama yazabilirsin.

Son satırdaki print() çalışmadı çünkü başına # koyduk. Buna kodu yoruma almak denir ve gerçek hayatta çok sık kullanılır. Bir kod parçasını silmeden devre dışı bırakmanın en hızlı yolu bu.

VS Code’da Kısayol

Satırları tek tek # ile işaretlemek zorunda değilsin. İmleci satıra koy ve Ctrl + / (Mac’te Cmd + /) tuşlarına bas. Aynı kısayol yorumu geri de kaldırır. Birden fazla satırı fareyle seçip aynı tuşa basarsan hepsi birden yoruma döner.

İyi Yorum Nasıl Yazılır?

Bu işin ince kısmı burası. Her satıra yorum yazmak iyi alışkanlık değil. Kod zaten ne yaptığını söylüyor. Yorum ise neden yaptığını anlatmalı.

# Kötü yorum: kodun söylediğini tekrar ediyor
# x'e 5 ekle
x = x + 5

# İyi yorum: kararın sebebini açıklıyor
# Sunucu 5 saniyelik gecikme ekliyor, bunu telafi ediyoruz
x = x + 5

Kendi tecrübemden: İlk yıllarımda koduma açıklama yazmayı sevmezdim. Sonra üç ay önce yazdığım bir veri temizleme betiğini açtım ve neden belli bir sütunu atladığımı hatırlayamadım. O gün iki saatimi kendi kodumu çözmeye harcadım. O günden sonra “bu neden böyle?” sorusunun cevabını her zaman yoruma yazarım.

Kısa bir kontrol listesi:

  • Açıkça belli olanı yazma. print("Merhaba") için “ekrana yazdır” yorumu gereksiz.
  • Garip görünen bir çözümün sebebini yaz.
  • Kodu değiştirdiğinde yorumu da güncelle. Eski ve yanlış bir yorum, hiç yorum olmamasından daha kötüdür.
  • Yorumlar kısa ve net olsun.

Çok Satırlı Yorum ve Docstring

Python’da çok satırlı yorum için ayrı bir sözdizimi yok. Her satırın başına # koyarsın:

# Bu program müşteri verilerini okur,
# eksik kayıtları temizler ve
# sonucu yeni bir dosyaya yazar.

Üç tırnak ("""...""") ile yazılan metinleri de yorum niyetine kullananlar çok. Teknik olarak bu bir yorum değil, bir string. Python onu okur, belleğe alır ve hiçbir şey yapmadan geçer. Asıl görevi fonksiyonların ve sınıfların başına yazılan docstring (belge metni) olmak. Bunu 25. derste fonksiyonlarla birlikte göreceğiz. Şimdilik “satır satır #” yöntemini kullan.

Girinti (Indentation) Nedir?

Çoğu programlama dilinde bir kod bloğu süslü parantezlerle ({ }) sınırlanır. Python bunu satır başındaki boşluklarla yapar. Bu boşluğa girinti (indentation) denir.

Henüz if yapısını işlemedik (12. derste detaylıca göreceğiz) ama girintiyi anlamak için basit bir örnek yeterli:

# girinti_ornek.py
yas = 20

if yas >= 18:
    print("Reşitsin")       # 4 boşluk içeride: if'in bloğunun parçası
    print("Oy kullanabilirsin")  # Bu da aynı blokta

print("Program bitti")      # Girinti yok: if'in dışında, her durumda çalışır
Reşitsin
Oy kullanabilirsin
Program bitti

Arka Planda Ne Oldu?

  • Python if yas >= 18: satırında şartı kontrol etti. Sonundaki iki nokta (:) “şimdi bir blok başlıyor” demek.
  • Şart doğru olduğu için, aşağıdaki içeri girintili iki satırı çalıştırdı.
  • Girintisiz print("Program bitti") satırı bloğun dışında. Blok bittiği için o da sırayla çalıştı.

yas değerini 15 yapıp tekrar çalıştırırsan sadece “Program bitti” yazar. İçerideki iki satır atlanır. Girinti burada program akışını doğrudan belirliyor, estetik bir tercih değil.

Kaç Boşluk Kullanmalı?

Standart: 4 boşluk. Python resmi olarak 2 ya da 3 boşluğa da izin verir ama tüm dünya 4’te anlaşmış durumda. Aynı blokta hep aynı sayıda boşluk kullanmak zorundasın.

İkinci derste VS Code ayarlarında editor.insertSpaces ve editor.tabSize değerlerini girmiştik. Tab tuşuna bastığında 4 boşluk eklenmesinin sebebi tam olarak bu. O ayarı yaptıysan şimdiden bir sürü derdin önüne geçmişsin.

Sık Karşılaşılan Girinti Hataları

Python’a yeni başlayanların neredeyse tamamı bu hatalarla tanışır. Bende de hâlâ ara sıra çıkıyor, özellikle kodu başka yerden kopyalayıp yapıştırdığımda.

1. Blok İçin Girinti Unutmak

if yas >= 18:
print("Reşitsin")
IndentationError: expected an indented block after 'if' statement on line 1

Mesaj açık: “if‘ten sonra girintili bir blok bekliyordum.” İki nokta koyup alt satırı içeri almayı unutmuşsun.

2. Gereksiz Girinti

print("Birinci satır")
    print("İkinci satır")
IndentationError: unexpected indent

Ortada bir blok yokken satırı içeri almışsın. Genelde satırın başında yanlışlıkla kalan bir boşluktan kaynaklanır. Sebebi gözle görmek zor olabilir. İşte ikinci derste açtığımız renderWhitespace ayarı tam burada işe yarıyor, fazladan boşlukları nokta olarak gösteriyor.

3. Tutarsız Girinti Seviyesi

if yas >= 18:
        print("Reşitsin")
    print("Oy kullanabilirsin")
IndentationError: unindent does not match any outer indentation level

İlk satır 8 boşluk, ikincisi 4 boşluk. Python ikincisinin hangi bloğa ait olduğunu çözemiyor. Aynı bloktaki bütün satırların boşluk sayısı aynı olmalı.

4. Tab ile Boşluğu Karıştırmak

TabError: inconsistent use of tabs and spaces in indentation

En sinsi olanı bu. Gözle bakınca satırlar hizalı görünüyor ama biri tab, diğeri boşluk karakteri ile girintilenmiş. Başka bir editörden ya da internetten kod kopyaladığında sık karşılaşırsın. Çözüm: bütün bloğu seç, sağ alttaki “Spaces / Tab Size” göstergesinden Convert Indentation to Spaces seçeneğini kullan.

Hata ayıklama ipucu: Girinti hatası aldığında hata mesajındaki satır numarasının bir önceki satıra da bak. Python bazen sorunu asıl yerinden bir satır sonra fark ediyor.

Python Yazım Kuralları: Temel Bilgiler

Girinti dışında bilmen gereken birkaç temel kural daha var.

Büyük/Küçük Harf Duyarlılığı

Python case-sensitive‘tir. Yani isim, Isim ve ISIM üç ayrı ad. Bir önceki derste Print yazınca aldığımız hatanın sebebi buydu.

Satır Sonunda Noktalı Virgül Gerekmez

Başka dillerden gelenler her satırın sonuna ; koymaya alışkın. Python’da gerek yok. Satırın bitmesi komutun bittiği anlamına gelir. Teknik olarak koyabilirsin ama kimse koymuyor.

Uzun Satırları Bölmek

Bir satır çok uzadığında parantez içinde alt satıra geçebilirsin. Python parantez açıkken satırın devam ettiğini anlıyor:

# Parantez içinde satır bölme: ters bölüye gerek kalmaz
toplam = (100 + 250 + 175
          + 320 + 90)

print(toplam)
935

Ters bölü (\) ile de satır bölünebilir ama bir fazla boşluk bırakırsan hata verir ve gözle bulmak zordur. Parantez yöntemi daha güvenli.

PEP 8: Python’un Stil Rehberi

PEP 8, Python topluluğunun kod yazım stili için kabul ettiği resmi rehber. Zorunlu değil ama neredeyse herkes uyuyor. Yeni başlarken bilmen gereken ana noktalar:

  • Girinti: 4 boşluk.
  • Satır uzunluğu: En fazla 79 karakter civarı. Okunabilirlik için.
  • Değişken ve fonksiyon adları: Küçük harf ve kelimeler arası alt çizgi (kullanici_adi). Bu biçime snake_case denir.
  • Operatör çevresinde boşluk: toplam = a + b yazılır, toplam=a+b değil.
  • Virgülden sonra boşluk: print("a", "b").
  • Yorum: #‘tan sonra bir boşluk bırak.
# PEP 8'e uygun olmayan yazım
Toplam=10+5
print( Toplam )

# PEP 8'e uygun yazım
toplam = 10 + 5
print(toplam)

İkisi de çalışır, ama ikincisini okumak çok daha rahat. Şu an her kuralı ezberlemene gerek yok. Kod yazdıkça gözün alışacak. Değişken isimlendirmesini bir sonraki derste işleyeceğiz.

Uygulama: Hatayı Bul

Aşağıdaki kodda iki hata var. Dosyaya yapıştırıp çalıştır, hata mesajını oku ve düzelt:

# hata_avi.py
sicaklik = 30

if sicaklik > 25:
print("Hava sıcak")
    print("Su içmeyi unutma")

print("Gün sonu")

İpucu: İlk hata mesajı bir blok bekliyor. Onu düzelttikten sonra ikinci satırda başka bir şikâyet çıkabilir. Cevap: if‘ten sonraki iki print satırı da 4 boşlukla içeri alınmalı.

Kontrol Listesi

  • ✅ # ile yorum yazabiliyorum ve Ctrl + / kısayolunu kullanabiliyorum.
  • ✅ Yorumun “ne”yi değil “neden”i anlatması gerektiğini biliyorum.
  • ✅ Girintinin bloğu belirlediğini ve standardın 4 boşluk olduğunu biliyorum.
  • ✅ IndentationError ve TabError mesajlarını tanıyorum.
  • ✅ PEP 8’in ne olduğunu ve temel kurallarını biliyorum.

Sıkça Sorulan Sorular

Python’da çok satırlı yorum var mı?

Resmi bir çok satırlı yorum sözdizimi yok. Her satıra # koyarsın. VS Code’da birden fazla satırı seçip Ctrl + / yapmak işi saniyeye indiriyor.

Girinti için tab mı boşluk mu kullanmalıyım?

PEP 8 boşluk öneriyor. En güvenli yol, editörünü tab’a