Python 12- Fonksiyonlar(Functions) Nedir? – Big Datacı

Fonksiyonlar, çoklu ve karmaşık görevleri yerine getirme ve kolaylaştırma amacı taşıyan komutlar kümesidir. Sürekli tekrarladığımız uzun işleri fonksiyon yapısı haline getirerek hem zamandan tasarruf hem de karmaşıklıktan kurtulmayı sağlarız.

Amacı ise karmaşık görevleri bir araya getirerek, bu görevleri tek aşamada yapmamızı sağlamasıdır.

Kodlarınız uzadıkça onları kontrol etmek ve yönetmek zorlaşmaktadır. Fonksiyonlar ile yazdığınız kodlar daha kısa ve kullanılabilir hale gelir.

Öncesinde çok defa kullandığımız print() fonksiyonu gözünüze en aşina olabilecek fonksiyonlardan birisidir. Bunun dışında type(), str(), int(), len() fonksiyonlarını da kullanıldı.

Fonksiyonların Özellikleri

  • Her fonksiyon isminin yanında parantez() işareti bulunur. Örnek: type(), input().
  • Fonksiyonlar isimlendirilir ve bu isimle anılırlar. Örneğin print, str gibi.
  • Fonksiyonlar farklı sayıda parametreler alabilirler. Örneğin input fonksiyonu 1 parametre alırken print fonksiyonu 256 tane parametre alabilir.
  • Fonksiyonların içerisine işlevsellik kazandıran parametreler yazılabilir. Örneğin print(“Hello world”) gibi.
  • Python’da fonksiyonların yaşam döngüsü tanımlama ve çağrılma aşamasından oluşmaktadır. Tanımlanmayan hiçbir fonksiyon çağrılamaz.
  • Fonksiyon tanımlanıp body(gövde- girintili kısım) bölümü tamamen fonksiyona aittir. Body kısmından çıkıldıktan sonra fonksiyon bitmiş olur.

Fonksiyonların Türleri

Python’da genel hatlarıyla iki tür fonksiyon bulunmaktadır.

  1. Gömülü Fonksiyonlar (Builtin Functions): Python tarafından geliştirilmiş programlama dilinin içerisine gömülmüş olan fonksiyonlardır. Bunlar print(), int(), type() gibi fonksiyonlardır.
  2. Özel Fonksiyonlar(Custom(User Defined) Functions): Kullanıcı tarafından özel olarak üretilen fonksiyonlara denir. Birazdan üreteceğimiz new_student() fonksiyonu örnek verilebilir.

Fonksiyonlar Nasıl Oluşur?

Python, size fonksiyon oluşturabilme fırsatı sunar. Fonksiyon nasıl oluşturulur bir örnekle inceleyelim.

def my_function():
    print("Hello my function")

my_function()

Kodların çıktısı

Oluşturmuş olduğumuz my_function fonksiyonunu çağırarak fonksiyonun işlem yapması sağlandı.

Bir diğer örneğimizde ise bir parametreyle fonksiyonumuzu yazdırmaya çalışalım.

def my_func(name):
    print("Good evening "+name+" How are you?")
    
my_func("Bigdataci")

Kodların çıktısı

Oluşturmuş olduğumuz my_func fonksiyonunu “Bigdataci” parametresiyle çağırarak fonksiyonun işlem yapması sağlandı.

Birden fazla parametre çağırma işlemi de yapılabilir.

def my_f(fname,lname):
    print("My name is "+fname+" my last name is "+lname)
    
my_f("big","dataci")

Kodların çıktısı

Oluşturmuş olduğumuz fonksiyonda isim olarak “big” soyisim olarak da “dataci” alınmıştır. Fonksiyon çağrılarak kodun çıktısı elde edilmiştir.

Şimdi ise daha karmaşık ve uzun olan bir örnek yapmaya çalışalım. Bu örneğimizde öğrenci kaydı oluşturmaya çalışalım.

def new_student(name, surname, university, department):
    print("-"*20)
    print("Name:",name)
    print("Surname:",surname)
    print("University:",university)
    print("Department:",department)

Ekleyeceğimiz veriler

new_student("Simay","Avcı","Gazi University","Industrial Engineering")
new_student("Vera","Yıldır","Hacettepe University","Automotive Engineering")
new_student("Ege","Aymaz","Hacettepe University","Medicine")
new_student("Oğuzhan","Orhan","Gazi University","Industrial Engineering")

Kodların çıktısı

Yukarıda oluşturmuş olduğumuz fonksiyon sayesinde yeni öğrenci kayıtlarını eklemeyi sadece 1 satırla halletmiş olduk. Fonksiyonumuz sayesinde 4 satır kod yazarak 4 öğrenci kaydını gerçekleştirmiş olduk.

Fonksiyonları yukarıdaki örnek üzerinden toparlayacak olursak:

  • Fonksiyon kodlamasına def ifadesi ile başlanır.
  • Daha sonrasında fonksiyona isim verilir.(new_student)
  • Fonksiyona isim verildikten sonra parantezler ve iki nokta unutulmamalıdır. Örneğin def new_student(): gibi
  • Parantezin içerisinde name, surname, university ve department parametreleri bulunuyor.
  • Eklenecek kayıtlar fonksiyonun dışarısına yazılır.(Girintisiz olması gerekmektedir. Yoksa hatayla karşılaşabilirsiniz.) Örneğin new_student(“Simay”,”Avcı”,”Gazi University”,”Industrial Engineering”) girintisiz yazılmıştır.

Fonksiyonların devamını bir sonraki yazımda bulabilirsiniz.

Bir Cevap Yazın