Programını Etkileşimli Yapan İki Fonksiyon
Çoğu başlangıç Python programı aynı şekli izler: input() ile kullanıcıdan bir şey iste, cevapla bir şey yap ve print() ile sonucu bildir. Bu iki yerleşik fonksiyon, kodunun dünyayla konuşma biçimidir.
Teker teker ele alalım.
print(): Çıktı Yazmak
En basit haliyle print() terminale bir satır metin yazar:
Bu, hello sözcüğünü arkasından bir satır sonu gelecek şekilde yazar. Satır sonu, ekrandaki bir print çağrısını diğerinden ayıran şeydir.
Tek çağrıda birkaç değer geçebilirsin; Python aralarına boşluk koyar:
Çıktı:
Name: Ada Age: 36
Değerlerin string olması gerekmez. print her argümanda str() çağırır, dolayısıyla tipleri rahatça karıştırabilirsin:
Ayıracı Değiştirme
Değerler arasında boşluk istemiyorsan sep kullan:
Satır Sonunu Değiştirme
print varsayılan olarak bir satır sonu ekler. Bunu değiştirmek için end kullan — örneğin çıktıyı aynı satırda tutmak için:
end="", bir satırı parça parça inşa etmenin yoludur.
print stdout'a Gider
Varsayılan olarak print, stdout'a (standart çıktıya) yazar — terminal çıktısının normalde belirdiği yer. file argümanıyla onu stderr'a, bir dosyaya ya da dosya benzeri başka bir nesneye yönlendirebilirsin:
Biçimlendirilmiş çıktı için — iki ondalık basamak, doldurulmuş sütunlar, büyük sayılarda virgül — print içinde f-string kullan:
input(): Kullanıcıdan Okumak
input(prompt) programı durdurur, kullanıcıya istemi gösterir ve bekler. Kullanıcı enter'a basana kadar ne yazarsa yazsın, string olarak geri döner.
input konusunda yeni başlayanların canını sıkan üç şey var:
Her Zaman String Döndürür
Kullanıcı 42 yazsa bile elde ettiğin "42" string'idir. Üzerinde doğrudan aritmetik yapamazsın:
Bu yüzden sık sık int(input(...)) ya da float(input(...)) yazımını görürsün. Kullanıcı geçerli bir sayı olmayan bir şey yazarsa int() ValueError fırlatır — bunu istisnalar bölümünde düzgünce ele alacağız.
İstem İsteğe Bağlıdır
Bir istem string'i geçmezsen input() sessizce bekler ki bu neredeyse her zaman yanlış seçimdir — kullanıcı ne sorduğunu bilmez. Her zaman net bir istem geç:
Hiçbir Şey Kırpmaz
Kullanıcı baştaki ve sondaki boşluklar dahil ne yazarsa harfiyen geri döner. Mantığın için bu önemliyse .strip() çağır:
Küçük ve Eksiksiz Bir Program
Hepsini bir araya getirelim — kullanıcıdan bilgi isteyip küçük bir rapor yazdıran birkaç satır:
On iki satır. Koddan çok, yukarıdan aşağıya talimatlar gibi okunuyor. Bu belgelerin teşvik etmeye çalıştığı stil tam olarak bu.
print Tabanlı Hata Ayıklama Ne Durumda?
Bazen "gerçek geliştiriciler debugger kullanır, print değil" dendiğini duyarsın. Bu fazla abartılı. Print özellikle küçük script'ler ve hızlı denemeler için gayet iyi bir hata ayıklama aracıdır. Bir şeyi çözerken print çağrılarını bolca serpiştir, bitince de onları kaldır.
Hayatı kolaylaştıran iki küçük numara:
f-string içindeki = hem ismi hem değeri yazdırır; bu da bir sürü print("name =", name) kalıplarından kurtarır.
Devam
print ve input sana tam bir diyalog döngüsü verir: sor, oku, cevap ver. Bir sonraki bölümde işler koşullar ile karışmaya başlıyor — if ifadesi ve programının gördüğü değerlere göre ne yapacağına karar veren operatörler.
Sıkça Sorulan Sorular
Python'da print() ne yapar?
Değerleri terminale yazar. print("hello") arkasından bir satır sonu gelecek şekilde hello yazdırır. Virgülle ayrılmış birden fazla değer geçebilirsin; print() varsayılan olarak aralarına boşluk koyar.
Python'da input() nasıl çalışır?
input(prompt) programı duraklatır, kullanıcıya istemi gösterir, bir şey yazıp enter'a basmasını bekler ve yazdığını bir string olarak döndürür. Hep string — bir sayı istiyorsan çağrıyı int(...) ya da float(...) ile sar.
Python'da aynı satırda nasıl yazdırırım?
print fonksiyonuna end="" geç. print varsayılan olarak çıktıdan sonra bir satır sonu ekler; end'i boş bir string'e (veya başka bir karaktere) ayarlamak o satır sonunun yerini alır.