Menu

Python Yorum Satırları: Tek Satırlık, Çok Satırlı ve Docstring'ler

Python'da yorum nasıl yazılır — # ile tek satırlık, çok satırlık bloklar ve fonksiyon ile modülleri belgelemek için docstring'ler.

Yorumlar İnsanlar İçindir

Python yorumları görmezden gelir. Mesele bundan ibaret. Yorum olarak işaretlediğin her şey yorumlayıcıya görünmez olur — sadece kodu okuyan kişi için oradadır, o da genellikle altı ay sonra geçmiş sen'in ne düşündüğünü merak eden gelecek sen olursun.

Ama kodun bariz şekilde ne yaptığını tekrarlayan bir yorum yazmaya değmez. En iyi yorumlar neden'i açıklar — bir kısıt, bir geçici çözüm, koddan kendiliğinden anlaşılmayan bir karar. Ne olduğunu kod zaten anlatıyor.

# ile Tek Satırlık Yorumlar

Temel hali bir # ve ardından notun:

main.py
Output
Click Run to see the output here.

Bir satırın sonuna kısa bir yorum da ekleyebilirsin. Kural olarak # öncesinde en az iki boşluk bırak:

main.py
Output
Click Run to see the output here.

Python, string'in dışındaki herhangi bir # işaretini görür ve satırın geri kalanını yorum olarak ele alır. "String dışında" kısmı önemli: tırnak içindeki # sadece bir karakterdir.

main.py
Output
Click Run to see the output here.

String içindeki #section-2 URL'nin parçası. Python sadece string kapandıktan sonraki # için "yorum" moduna geçer.

Birden Fazla Satırı Yoruma Alma

Python'un /* */ blok yorumu yoktur. Birkaç satırı atlamak için her birinin başına # koyarsın:

main.py
Output
Click Run to see the output here.

Bu # işaretlerini neredeyse hiç elle yazmazsın. Her düzgün editörde seçili her satıra # ekleyip kaldıran bir "satır yorumu aç/kapa" kısayolu vardır:

  • VS Code: Cmd + / (macOS) ya da Ctrl + / (Windows/Linux)
  • PyCharm: Cmd + / ya da Ctrl + /
  • Vim: eklentilerine bağlı; vim-commentary tek satır için gcc, seçim için gc atar.

Editöründeki kısayolu bir kere öğren; "bu bloğu yoruma alıp bir şey denemek" tek tuş basışına dönüşür.

Üçlü Tırnaklı String Hilesi (ve Neden Gerçek Bir Yorum Olmadığı)

Bazen şuna benzer kodlar görürsün:

main.py
Output
Click Run to see the output here.

Teknik olarak bu, atılan bir string ifadesidir. Python onu ayrıştırır, değerlendirir ve sonucu atar. Yorum gibi davranır ama yorum değildir. Stilistik olarak, bu sadece bir yerde iyi bir fikir: docstring olarak.

Docstring'ler: Üçlü Tırnakların Asıl Yeri

Bir docstring, bir fonksiyonun, sınıfın veya modülün tam ilk ifadesi olarak yerleştirilmiş üçlü tırnaklı bir string'dir. Python onu belge olarak tanır ve çalışma zamanında help() fonksiyonu ile __doc__ özniteliği aracılığıyla erişilebilir kılar:

main.py
Output
Click Run to see the output here.

Docstring'leri değerli kılan iki şey var:

  1. IDE'ler, help() ve belge üreticileri gibi araçlar onları otomatik olarak okur. Fonksiyonun üstündeki bir yorum bunların hiçbirini sağlamaz.
  2. Fonksiyonu çağrıldığı noktada anlatırlar — birisi editörde discount(...) üzerine geldiğinde docstring bir ipucu olarak belirir.

Bir docstring'de neler olacağına dair bir kural var (PEP 257): ilk satırda tek satırlık özet, boş bir satır, ardından gerekirse daha uzun bir açıklama. İlk gün tam formata takılma — sade bir tek satırlık özet bile hiç docstring olmamasından çok daha iyidir.

İyi Yorumlar Aslında Ne Söyler

İleride çok baş ağrısından kurtaran birkaç ilke:

  • Ne yerine neden'i anlatmayı tercih et. # Kullanıcılar üzerinde döngü kur gürültüdür; # 503'te tekrar dene — Redis deploy sırasında bazen ölüyor altın değerindedir.
  • Kodu değiştirdiğinde yorumları da güncelle. Yanlış bir yorum hiç yorumdan daha kötüdür. Bayat yorumlar gelecekteki okuyucuyu aktif olarak yanıltır.
  • Kodu yoruma alıp bırakma. Gerek yoksa sil. Versiyon kontrolü hatırlar. Yoruma alınmış bloklarla dolu bir dosya hızla güvenilmez hale gelir.
  • Apaçık olanı atla. x = x + 1 # x'i artır hiçbir şey katmaz.

Sonuç

Yorumları yazmak ücretsiz, atlamak ucuzdur. Okuyucunun sana teşekkür edeceği bir not bırakıyorsan onlara başvur — bir şeyin neden işe yaradığının ince sebebi, bir issue'ya bağlantı, bir uç durum uyarısı. Fonksiyon ya da sınıf tanımlarken docstring kullan. Geri kalanda konuşmayı açıklayıcı isimler ve küçük fonksiyonlara bırak.

Artık bir Python dosyasını okumak ve yazmak için ihtiyacın olan her şey elinde. Bir sonraki bölüm, dilin gerçekten bir şeyler yapmaya başladığı yer: değişkenler, veri tipleri ve Python'un tutabileceği değerler.

Sıkça Sorulan Sorular

Python'da nasıl yorum yazarım?

Bir satırın başına (ya da herhangi bir yerine) # koyarsın ve o satırda # sonrası her şey yorum sayılır. Python kodu çalıştırırken yorumları tamamen görmezden gelir.

Python'da birden fazla satırı nasıl yorum satırı yaparım?

Python'un özel bir çok satırlı yorum söz dizimi yoktur. Atlamak istediğin her satırın başına # koyarsın. Çoğu editörde seçili her satıra # ekleyip kaldıran bir kısayol vardır — örneğin VS Code'da Cmd/Ctrl + /.

Python'da üçlü tırnaklı string'ler yorum sayılır mı?

Tam olarak değil. Hiçbir yere atanmamış üçlü tırnaklı bir string çalışma zamanında yorum gibi davranır ama Python onu yine de string olarak ayrıştırır. Bu kalıp çoğunlukla docstring'ler için kullanılır — fonksiyon, sınıf ve modül belgeleri — genel amaçlı yorumlar için değil.

Coddy ile kodlamayı öğren

BAŞLA