Python’da Fonksiyonlar
Fonksiyonlar programlama dillerinde bazı görevleri yerine getirmek üzere oluşturulmuş yapılardır. Bu görevler ana programda karmaşıklık meydana getireceği için bazı fonksiyonlar içerisinde tanımlanıp sadece döndürülmesi gereken değeri dışarı yansıtan yapılardır. Bir programlamada fonksiyon yapıları kullanmak programın etkili ve verimli çalışmasını sağlamaktadır. Ayrıca belli bir görev iki veya daha fazla yerde kullanılmak istenilebilir. Bu durumda görevin iki veya daha fazla alanda tanımlamak yerine bir fonksiyon içerisine bu görevin aktarılması ve sadece kodun ilgili alanında bu fonksiyonun çağrılması sadelik sağlayacaktır.
Python’da fonksiyonlar (alt program, metot veya prosedür) bir ana programın ya da bir alt program tarafından çağrılmak için oluşturulan ve kendi içerisinden belli bir işi gerçekleştiren yapılara denir.
Bir programcı yazılan programın anlaşılabilirliğini, hataların ayıklanmasını ve program içerisinde bulunan kodlamaların ileri -geri kod takibinin gerçekleştirilmesinde esneklik sağlamak amacıyla programda fonksiyonlar kullanmaktadır. Bu yapılar sayesinde yazılan programa bir modüler yapı kazandırılmış olacaktır.
bir fonksiyonun tanımlanması için “ def ” anahtar kelimesi kullanılmaktadır. Anahtar kelimeden sonra fonksiyona verilmek istenilen isim yazılır ve parantez açılıp kapandıktan sonra iki nokta üst üste ifadesi eklenir. Bir sonraki satırda ise bu fonksiyonun ne gibi işlemleri yapacağı tanımlanır. Artık istenilen fonksiyon elde edilmiştir. Bu tanımlanan fonksiyonun ana programda çağrılıp çalıştırılması gerekecektir. Python’da her modül “__name__” isimli bir özelliktedir. Bu modül ana programda çalıştırılmak istenildiği zaman “__name__” özellikli değer, “__main__” olarak ayarlanır. Bu şekilde hazırlanan fonksiyon ana programda çalıştırılmış olunur.
Bazı fonksiyonlar içerisine birden fazla parametre alıp, bu parametreler ile bir görev gerçekleştirilip daha sonra başka bir değer üretebilir. Üretilen bu değerin programda döndürülmesi gerekebilir. Bu tarz fonksiyonların yazımında değerin geri döndürülmesi gerektiği için “ return” anahtar kelimesiyle kullanılmaktadır. Return komutu fonksiyonun geriye döndüreceği değeri üreten bir komuttur.
Ana programda oluşturulan boş fonksiyondan dolayı hata mesajı almamak için fonksiyon içine “ pass” komutu yazılır. “Pass” komutu hiçbir şey yapmadan fonksiyonun dışına çıkma komutudur.
Tanımlanacak fonksiyon tek satırlık bir kısa bir fonksiyon olabilir. Python programlamada tanımlanacak fonksiyon tek satırdan oluşturulacak ise “lambda” anahtar kelimesi kullanılarak fonksiyon oluşturulabilir.
Eğer bir liste veya dizi içerisindeki bir grup veriyle fonksiyon çalıştırıp ve fonksiyonda değerler hesaplanmak isteniliyor ise “ map ” komutu kullanılmaktadır. Ancak burada dikkat edilmesi gereken nokta “map” komutunun döndüreceği değerler bir liste veya dizi olduğu için print komutuyla doğrudan ekrana bastırılması mümkün değildir.
Eğer bir liste veya dizi içerisindeki bir grup veriyle fonksiyon çalıştırıp, fonksiyonda değerler hesaplayıp ve bu değerler üzerinde belli bir durumu sağlayanların filtrelenip diğerlerin gösterilmesi isteniyorsa bu “ filter” komutu ile gerçekleştirilir. Yani mevcut bir liste veya dizi üzerinde filtreleme işlemi gerçekleştirir.