Python’ da Fonksiyon ve Fonksiyon Okuryazarlığı

Züleyha Çakır
5 min readJun 4, 2021

--

Merhaba,

Sizlere veri bilimi dünyasına adım attığım bugünlerde python programlama dilinde fonksiyon, fonksiyon okuryazarlığı, karar kontrol yapıları ve döngülerle birlikte dikkat çekilmesi gereken durumları anlatıyor olacağım. O zaman başlayalım.

Fonksiyon Nedir?

Belirli görevleri yerine getirmek için kullandığımız, genel amaçlar taşıyan görevciler diyebiliriz. Fonksiyonlar, tekrar eden ve her defasında yapmak istediğimiz işlemleri tek bir isim altında toplamamızı sağlar.

Fonksiyon Okuryazarlığı Nedir?

Fonksiyona ilişkin dökümantasyona ulaşmaya çalışmak fonksiyon okuryazarlığını büyük ölçüde açıklamaktadır. Fonksiyonların dökümantasyonları, fonksiyonun ne işlev gördüğünü, nasıl kullanmamız gerektiğini özetlemektedir. Örneğin, burada print fonksiyonunu ele alalım. Print fonksiyonunun işlevi ekrana yazdırmamızı sağlar.

Print fonksiyonunun önüne ? işareti yazdığımızda, print fonksiyonunun dökümantasyonunu getirir ve fonksiyonun kullanımı ile ilgili bilgiler verir.

Örnek üzerinden ilerlersek; sep, end, file ve flush gibi argümanlardan oluştuğunu görüyoruz.

Argüman nedir peki?

Argüman, fonksiyonların genel amaçlarını özelleştirip, biçimlendirmemize yarayan alt görevciler ve parametrelere verdiğimiz isimlerdir.

Parametreler ise fonksiyonu tanımlağımız anda kullandığımız isimlendirmelerimizden oluşur. Şimdi fonksiyon tanımlaya geçelim artık :)

def dediğimizde python’ a fonksiyon tanımlayacağım demiş oluyoruz. kare_al(x):

kare_al ifadesi fonksiyonumuzun ismi, ( ) içerisine yazdığımız x’ de fonksiyonumuzun argümanıdır. Fonksiyonda sona yazdığımız “:” ifadesi fonksiyonun ne yapacağını açıklamamızı sağlar.

print(x**2) ise fonksiyonumuzun gövde kısmını oluşturuyor ve her defasında içerisindeki istenilen durumu gerçekleştirerek sonuçları ekrana yazdırmamızı sağlar.

Başka bir örnekle açıklamak gerekirse:

Burada calculate adında bir fonksiyon tanımlayarak iki argüman (a,b) belirttik ve çarpım işlemini c’ yi değişken olarak atayarak gerçekleştirdik. (c=a*b)

Şimdi ise fonksiyonun bu çarpma işleminden sonra sonuçları bir listeye eklemesini isteyelim.

Burada öncelikle carpim_sonuc adında bir değişken oluşturup boş bir listeyi atadık. Liste “[ ]” ile ifade edilen bir veri tipidir.

Def diyerek Python’ a fonksiyon tanımlayacağımızı haber verdik ve fonksiyonumuzun ismini carpim_ekle yazarak argümanlarımızı (a,b) ekledik.

Çarpım işlemini c değişkenine atadık, boş listemizi oluşturan carpim_sonuc değişkenimize c çarpma işleminin sonuçlarını listeye eleman eklememizi sağlayan append metoduyla ekleme işlemini gerçekleştirdik.

Çıktılardan da anlaşılacağı üzere; her çarpım işlemi gerçekleştikten sonra belirtmiş olduğumuz listeye sonuçları bir arada eklemiş olduk.

Bu temel fonksiyon örneklerinden sonra karar kontrol yapıları (koşullar) ve döngüleri gözden geçirelim.

Karar Kontrol Yapıları:

Mantıksal sorgulamaları yapmamızı sağlar. Bir şartın sağlanıp sağlanmamasının sonucu olarak bize True-False sonucu dönecek.

If :

Anlam olarak bize “ eğer” ifadesini temsil eder. Eğer bu sorgu sağlanıyorsa yani yukarıdaki True-False kontrolünden True ifadesini aldıysak, if’ in devamındaki belirttiğimiz işlem gerçekleşmiş olacak.

Örneğin; fiyat=10000 dedik.

“==” ifadesi ile girilen fiyat değerine eşit midir? sorgulamasını gerçekleştirmiş oluyoruz.

fiyat==10000 (fiyat 10000 midir? Sonucu True döner)

fiyat==20000 (fiyat 20000 midir? Sonucu False döner)

True-False işlemleri kontrol anlamında kullandığımız sorgularımız (if, else, elif gibi) öncesinde çalışmaktadır.

Else:

If ile koşulun sağlanmadığı durum için akışın devamındaki işlemleri yapmamızı sağlar.

Elif:

Bazı durumlarda koşul sadece sağlıyor ya da sağlamıyor durumundan daha fazla koşula ihtiyaç duyabiliriz. İşte burada birden fazla koşulu sorgulamamızı sağlayan “elif” devreye giriyor.

Özetle söylemek gerekirse; koşul nerede sağlanıyorsa orada sorgu duracak ve sağlandığı durumda yapılmasını belirttiğimiz işlemler gerçekleşmiş olacak.

Döngüler:

Gerçekleştirilmesini istediğimiz işlemlerde aynı işlemin tekrar ederek çalıştırılmasıdır. Bu tekrarlama işlemlerini döngüler ile sağlarız.

For:

Listedeki elemanlara tek tek gidip, bir işlem uygulama işini yerine getirir diyebiliriz.

Burada gruplar adında ve 4 elemanlı bir liste tanımladık. Liste veri tipleri sıralanabilme özelliğine sahip olmasından dolayı üzerinde index işlemleri gerçekleştirebilmemizi sağlar.

Örneğin; gruplar listesindeki ilk eleman olan A’ ya ulaşmak isteyelim.

gruplar[0] → burada çıktı olarak A’ ya kolayca ulaşmış olacağız.

Ancak, içerisinde binlerce eleman olan bir listede bunu tek tek index sorgulayarak yapabilmemiz mümkün değil. Burada for döngüsü bize kolaylıklar sağlamakta. For’ dan sonra neyi belirtiyorsak (burada i olarak isimlendirdik) o bizim temsili değişkenimiz olacak. Temsili değişken i, gruplar listesinin içindeki bütün elemanları tek tek gezecek ve yakaladığı her elemanı temsil etmiş olacak.

While:

Gerçekleşmesini istediğimiz şartın sağlandığı sürece sorgu akışının devam etmesini sağlar.

Burada a diye değişkenimiz var ve while burada a’ nın 10 dan küçük olduğu sürece belirttiğim işlemi şartı sağlayana kadar tekrar edecek. Eğer a değişkeni 10’ dan küçükse a’ ya +1 ekleyerek ekrana çıktı olarak getirecek.

Örneğin; a=1 olduğunda a<10 olacak ve +1 ekleyerek ekrana a’ yı 2 atayarak yazdırmış olacak.

a=2 olduğunda a<10 olacak ve +1 ekleyerek yine ekleme yaparak döngüye devam edecek ve a’ nın 10 olduğu yerde döngüyü tamamlamış olacak.

Sonuç olarak elde ettiğimiz çıktıda; 2, 3, 4, 5, 6, 7, 8, 9 sayıları olacak.

Döngü içerisinde bazen belirli şartları yakaladığımızda döngüyü bitirmek ya da şartı sağlayan durumu atlayarak devam etmek isteyebiliriz. Bu durumda break ve continue ifadelerini kullanmamız gerekir.

İçerisinde sayılardan oluşan bir liste oluşturduk. For’ dan hemen sonra temsili değişkenimizi yazıp, bu listenin içindeki elemanları teker teker geziyoruz. Eğer yakaladığımız eleman i>30 ise işlemi bitirip yazdırma işlemi gerçekleşecek. Bize çıktı olarak; 10, 20 ve 30 değerlerini vermiş olacak.

Eğer yakaladığımız eleman i==20 ise 20' yi atlayarak devam edecek ve listeyi gezmeyi bitirdiğinde yazdırma işlemi gerçekleşecek. Bize çıktı olarak; 10, 30, 40,50 ve 60 değerlerini vermiş olacak.

Bu ilk yazımda fonksiyonları basit bir şekilde açıklamaya çalıştım, umarım faydalı olmuştur. Keyifli okumalar dilerim:)

Görüşmek üzere…

--

--