Bu yazıda Python I/O (Giriş /Çıkış) işlemlerini gerçekleştirmek için gerekli olan iki fonksiyon üzerine odaklanacağız. Ayrıca python modüllerini programa aktarmayı ve bunları nasıl kullanacağımızı öğreneceğiz.
Python’da veri giriş çıkışı için standart olarak input() ve print() fonksiyonları kullanılır. print() fonksiyonu ile çıktı alma işlemini nasıl yaptığımızı görerek yazıya devam edelim.
Python print() Kullanarak Çıktı Alma
Python’da standart olarak bir ekrana yada bir cihazdan dışarı bilgi göndermek için print() fonksiyonu kullanılır. Aşağıdaki örnek String (Metinsel) bir veriyi ve bir tamsayıyı nasıl çıktı alacağımızı göstermektedir.
1 2 3 4 5 6 7 8 9 |
print('Merhaba bu bir çıktıdır') # Çıktı: Merhaba bu bir çıktıdır yas = 25 print('Kişi Yaşı:', yas) # Output: Kişi Yaşı:25 |
İlk print() ifadesinde string bir veri yazdırılmıştır. Ancak ikinci print() fonksiyonunda iki farklı değerin virgülle ayrılarak yazdırılmıştır.
print() fonksiyonunun yazım kuralı:
1 2 3 |
print(*nesneler, sep=' ', end='\n', file=sys.stdout, flush=False) |
nesneler: ekrana yazdırılacak verileri, değişkenleri yada nesneleri ifade eder.
sep: yazdırılacak her değer arasına konulacak ayracı göstesterir.
end: son yazılan değerden sonra ekrana yazılacak ifade yada sembolü gösterir.
file: standart olarak nereye verinin nereye yazdırılacağını gösterir. Ekrana yadırmak için sys.stdout
starndart tanımlıdır.
Yukarıdaki tanımlamaların hepsini yapmasak da standart olarak ayraçla tüm değerleri ekrana yazdırabiliriz. Aşağıdaki örneği yukarıdaki ifadelerin kullanımı için inceleyiniz.
1 2 3 4 5 6 7 8 9 10 |
print(1,2,3,4) # Çıktı: 1 2 3 4 print(1,2,3,4,sep='*') # Çıktı: 1*2*3*4 print(1,2,3,4,sep='#',end='&') # Çıktı: 1#2#3#4& |
Çıktı:
Python format Kullanımı
Bazen çıktımızı daha düzenli hale getirmek için biçimlendirmek isteriz. Bu işlem için str.format() yöntemi kullanılarak yapılabilir. Bu yöntem herhangi bir dize için rahatlıkla uygulanabilir.
1 2 3 4 5 |
not1 = 55; not2 = 100 print('1.Sınav Notu:{} \n2.Sınav Notu:{}'.format(not1,not2)) |
Süslü parantezler kullanarak sırayla format içindeki değerli string içine yazdırabiliriz.
Ayrıca sıralama konusunda istenirse süslü paratezler içinde sıralama yapılarak hangi sırada yazılacağına karar verebiliriz.
1 2 3 4 5 |
not1 = 55; not2 = 100 ort=(not1+not2)/2 print('Not1:{1} Not2:{2} Ortalama:{0}'.format(ort,not1,not2)) |
Yine anahtar bir kelime ile de değerleri string içinde yazdırabiliyoruz.
1 2 3 4 |
print("Ad:{isim} Soyad:{soyisim} Yaş:{yas}" .format(isim="Abdullah",soyisim="Adıgüzel",yas=25)) |
String ifadelerimizi C dilinde sprintf fonksiyonundaki gibi biçimlendirme imkanımızda mevcuttur.
1 2 3 4 5 6 |
x = 12.3456789 print('x= %3.2f' %x) print('x= %3.4f' %x) |
Python input() Kullanarak Veri Girişi
Şimdiye kadar, programlarımız tanımlı veriler üzerinden işlemler yaptırdık.
Esnekliğe izin vermek için veriyi kullanıcıdan almak isteyebiliriz. Python’da buna izin vermek için input() işlevine sahibiz.
input() için sözdizimi:
1 2 3 |
input([komut]) |
Ekranda gösterilmek istenden bir dize varsa komut yerine yazılır. İsteğe bağlıdır.
1 2 3 4 5 |
num = input('Bir numara girişi yapın: ') print(num) |
Burada, girilen değerin bir sayı olmadığını, dize olduğunu bilmelisiniz. Bunu bir sayıya dönüştürmek için int() veya float() fonksiyonlarını kullanabiliriz.
1 2 3 4 5 |
num = input('Bir numara girişi yapın: ') num=float(num) print(num) |
Python Import Kullanımı
Programımız büyüdükçe, farklı modüllere ayırmak iyi bir fikirdir.
Bir modül Python tanımları ve ifadelerini içeren bir dosyadır. Python modülleri .py uzantılı bir dosya adına sahiptir.
Bir modülün içindeki tanımlar Python’daki başka bir modüle veya interaktif olarak aktarılabilir. Bunu yapmak için içe import anahtar kelimesini kullanırız.
Örneğin, matematik modülünü içe aktarmak için import yazarak aktarabilirsiniz.
1 2 3 4 |
import math print(math.pi) |
Program çıktısı:
3.141592653589793
import ile tüm ifadeleri programınıza dahil edebileceğimiz gibi, sadece istediğimizi ifadeyi dahil etmek için from anahtar kelimesini kullanarak aktarabiliriz.
Örnek:
1 2 3 4 |
from math import pi print(pi) |
Bir modülü içe aktarırken, Python sys.path dosyasında tanımlanmış birçok yere bakar.Baktığı dizin konumlarının bir listesi.
1 2 3 4 5 |
import sys sys.path print(sys.path) |
2 Yorum