Fonksiyonlarla devam ediyoruz...
Fonksyionlar kod tekrarlarımızı yapmamızı önleyen kodlardır.
Basit bir fonksiyon oluşturalım..
KOD
def fonksiyon():
print("Python programlama dili")
hemen burada yaptıklarımızı açıklayalım.
fonksiyonlar def parçacığı ile oluşturulur yani standart koddur.
def'den sonraki fonksiyon ise oluşturacağımız fonksiyonun ismidir.
Sizin seçiminize göre değişir.
son olarak fonksiyonun içinde 'Python programlama dili' ni yazdırma komutu verdik
Bu fonksiyonu her çağırdığımızda 'Python programlama dili' ni ekrana yazacaktır.
KOD-->fonksiyon çağırma
fonksiyon()
Python programlama dili-->ekran çıktısı
Parametlerinin kullanımını görelim.
KOD
def parametreler(x,y):
print(x+y)
parametreler(34,23)
67--->ekran çıktısı
Parametleri parantez içerisinde belirliyoruz.
Yukarıdaki kodda 2 sayının toplama işlemini yaptık.Burada 2 sayı
kullanıdık,arttırması yada azaltması size kalmış.
Örneklerle devam edelim...
KOD
def karşılaştırma(a,b):
if a>b:
print(a,"büyüktür",b,"den")
elif a==b:
print(a,"eşittir",b)
else:
print(b,"büyük",a,"dan")
Yukarıdaki kodlar gireceğimiz iki sayının karşılaştırmasını yapacaktır.
Örnek Ekran çıktısı
KOD
karşılaştırma(4,5)
5 büyüktür 4 den-->ekran çıktısı
Şimdi fonksiyonların yerel-kısmi değişkenlerini göreceğiz.
KOD
y=10
def yerel(y):
print("ilk y=",y)
y=5
print("yeni y=",y,"dir")
yerel(y)
ilk y= 10 ----->ekran çıktısı
yeni 5 dir
Burada yaptığımız fonksiyon içinde y mizi değiştirdik.Ama bu işlem de y
sadece fonksiyon kullanıldığında yeni değeri alacaktır.
yani
KOD
print(y)
10-->ekran çıktısı
yukarıdaki gibi ilk değerini verecektir.Eğer bunu kalıcı
değiştirmek istiyorsak...
KOD
x=50
def kalıcı():
global x
print("ilk a=",a)
a=100
print("Son a=",a)
kalıcı()
İlk a=20
Son a=100 ---->ekran çıktıları
yukarıdaki kodda kullandığımız yeni bir kod var:global
Bu kodu kullanarak değiştirdiğimiz sayıyı kalıcı olarak değiştirebiliriz.
Yani
KOD
print(x)
100-->ekran çıktısı
ekran çıktısını verecektir.Halbuki ilk olarak x' 50 tanımlamıştık.
global ifadesinden sonra 100 tanımladığımız için artık 100 değeri x'e atanmış oldu.
Şimdi dışarıda tanımlamadan direk fonksiyon içinde tanımlayarak bu işlevi
nasıl gerçekleştireceğimizi görelim...
KOD
def lokalolmayan():
x=45
print("ilk x=",x)
def lokalolmayan1():
nonlocal x
x=456
lokalolmayan1()
print("Son x=",x)
Burada fonksiyon içinde fonksiyon oluşturarak x değişkenimizi değiştirmiş olduk.
Bundan sonra x'in değerini çağırırsak hata alacağız.Çünkü dışarıda
herhangi bir x tanımlamadık.
Bu dersimiz bu kadar,2. bölümde görüşmek üzere...
def etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
def etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
10 Ekim 2011 Pazartesi
Fonksiyonlar-2
Fonksiyonlara 2.bölümde devam ediyoruz...
Şimdi varsayılan parametre belirlemeyi göreceğiz.
önekle başlayalım
KOD
def konus(isim,sayı=2):
print(isim*sayı)
konus("python")
pythonpython--->ekran çıktısı
konus("python",5)
pythonpythonpythonpythonpython---->ekran çıktısı
Kelime argümnalarına geçelim.Bunlar fonksiyonumuza normal veya 2 tane
parametre girmemizi sağlıyor.
KOD
def sayılar(x,y=2,z=5):
print("x--->",x,"y--->",y,"z--->",z)
sayılar(4)
x---> 4 y---> 2 z--->5 --->ekran çıktısı
sayılar(2,z=45)
x---> 2 y---> 2 z--->45 --->ekran çıktısı
Fonksiyonumuza istediğimiz sayıda argüman verebiliriz.
KOD
def limitli(x,y,z)
print(x*y*z)
limitli(4,5,6)
120 ---->ekran çıktısı
Şimdi özel bir fonksiyon kullanacağız:sum
Bu kodun görevi belirli bir liste içindeki sayıraı toplamamızı sağlar.
KOD
liste=[1,9,5]
sum(liste)
15--->ekran çıktısı
İstediğimiz sayıda parametre oluşturma...
KOD
def adlar(isim,*isimler):
print("Sıralı argüman:",isim)
print("Sırasız argüman:",*isimler)
adlar("ali","veli","ışık","ayşe","ahmet")
Sıralı argüman: ali --->ekran çıktısı
Sırasız argüman: veli ışık ayşe ahmet
burada istediğimiz sayıda argüman girmemize yardımcı olan
*isimler kodudur.
Burada listede kullanabiliriz...
KOD
liste=["x","y","z","a","b","c"]
adlar(liste)
Sıralı argüman: ['x', 'y', 'z', 'a', 'b', 'c']
Sırasız argüman: --->ekran çıktısı
adlar(*liste)
Sıralı argüman: x
Sırasız argüman: y z a b c --->ekran çıktısı
return ifadesi
Fonksiyonumuza bir değeri döndürmemizi yada değer üretmemizi sağlıyor.
KOD
def min(a,b):
if a>b:
return b
else:
return a
min(4,5)
4
pass ifadesi
Boş ifadeyi belirtmekte kullanılır.
KOD
def boşfonksiyon():
pass
boşfonksiyon()--->Bu kod ekran çıktısı vermeyecektir.
böylelikle boş bir fonksiyon oluşturmuş olduk.
doc ifadesi
Fonkiyonları belgelendirmeye yarar.Yani pythonu daha iyi anlamamızı sağlar.
KOD
def hesap(a,b):
'''Küçük olanı ekran çıktısı verecektir...'''
if a>b:
print(b)
else:
print(a)
hesap(667,456)
456--> ekran çıktısı
şidmi belgelendirme yapalım
KOD
print(hesap.__doc__)
Küçük olanı ekran çıktısı verecektir...-->ekran çıktısı
fonksiyonumuzn ne işe yaradığını bize bilgi olarak verir.
Bunun dışında normal standart ifadelere de uygulayabiliriz.
Örnek:
KOD
print(print.__doc__)
print(value, ..., sep=' ', end='n', file=sys.stdout)
Prints the values to a stream, or to sys.stdout by default.--->ekran çıktısı
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
son olarak (print.__doc__) ifadesinde doc'un enünde ve arkasında
2 tane alt tire(_) vardır.
Fonksiyonlar dersimiz burada sona erdi,sonraki derslerde görüşmek üzere.
Şimdi varsayılan parametre belirlemeyi göreceğiz.
önekle başlayalım
KOD
def konus(isim,sayı=2):
print(isim*sayı)
konus("python")
pythonpython--->ekran çıktısı
konus("python",5)
pythonpythonpythonpythonpython---->ekran çıktısı
Kelime argümnalarına geçelim.Bunlar fonksiyonumuza normal veya 2 tane
parametre girmemizi sağlıyor.
KOD
def sayılar(x,y=2,z=5):
print("x--->",x,"y--->",y,"z--->",z)
sayılar(4)
x---> 4 y---> 2 z--->5 --->ekran çıktısı
sayılar(2,z=45)
x---> 2 y---> 2 z--->45 --->ekran çıktısı
Fonksiyonumuza istediğimiz sayıda argüman verebiliriz.
KOD
def limitli(x,y,z)
print(x*y*z)
limitli(4,5,6)
120 ---->ekran çıktısı
Şimdi özel bir fonksiyon kullanacağız:sum
Bu kodun görevi belirli bir liste içindeki sayıraı toplamamızı sağlar.
KOD
liste=[1,9,5]
sum(liste)
15--->ekran çıktısı
İstediğimiz sayıda parametre oluşturma...
KOD
def adlar(isim,*isimler):
print("Sıralı argüman:",isim)
print("Sırasız argüman:",*isimler)
adlar("ali","veli","ışık","ayşe","ahmet")
Sıralı argüman: ali --->ekran çıktısı
Sırasız argüman: veli ışık ayşe ahmet
burada istediğimiz sayıda argüman girmemize yardımcı olan
*isimler kodudur.
Burada listede kullanabiliriz...
KOD
liste=["x","y","z","a","b","c"]
adlar(liste)
Sıralı argüman: ['x', 'y', 'z', 'a', 'b', 'c']
Sırasız argüman: --->ekran çıktısı
adlar(*liste)
Sıralı argüman: x
Sırasız argüman: y z a b c --->ekran çıktısı
return ifadesi
Fonksiyonumuza bir değeri döndürmemizi yada değer üretmemizi sağlıyor.
KOD
def min(a,b):
if a>b:
return b
else:
return a
min(4,5)
4
pass ifadesi
Boş ifadeyi belirtmekte kullanılır.
KOD
def boşfonksiyon():
pass
boşfonksiyon()--->Bu kod ekran çıktısı vermeyecektir.
böylelikle boş bir fonksiyon oluşturmuş olduk.
doc ifadesi
Fonkiyonları belgelendirmeye yarar.Yani pythonu daha iyi anlamamızı sağlar.
KOD
def hesap(a,b):
'''Küçük olanı ekran çıktısı verecektir...'''
if a>b:
print(b)
else:
print(a)
hesap(667,456)
456--> ekran çıktısı
şidmi belgelendirme yapalım
KOD
print(hesap.__doc__)
Küçük olanı ekran çıktısı verecektir...-->ekran çıktısı
fonksiyonumuzn ne işe yaradığını bize bilgi olarak verir.
Bunun dışında normal standart ifadelere de uygulayabiliriz.
Örnek:
KOD
print(print.__doc__)
print(value, ..., sep=' ', end='n', file=sys.stdout)
Prints the values to a stream, or to sys.stdout by default.--->ekran çıktısı
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
son olarak (print.__doc__) ifadesinde doc'un enünde ve arkasında
2 tane alt tire(_) vardır.
Fonksiyonlar dersimiz burada sona erdi,sonraki derslerde görüşmek üzere.
Kaydol:
Kayıtlar (Atom)