Fonksiyonlar
Python'da fonksiyonlar
💡 Fonksiyonlar Hakkında
Fonksiyonlara değişken değerlerinin kopyası gönderilir
Parametre olarak aldıkları değişkenleri değiştiremezler
🏠 Dahili Fonksiyonlar
print(<string>)
Ekrana yazma
print("X: {1}, Y: {2}")
X: {1}, Y: {2}
print('\r' + <string>, end='')
Satır başına yazı yazma
sum, len
Toplama, uzunluk, ortalama
sum([1, 2, 3])
5
eval(<string>)
Verilen stringi hesaplama
eval("x + 5")
6
type(<obje>)
Objenin türünü bulma
type(x)
<class 'number'>
enumerate(<obje>, <si>)
Numaralandırma
i, line in enumerate(file, 0)
🌃 Harici Fonksiyonlar
Fonksiyonları kullanmadan önce
import <paket>
ile paketi dahil etmeniz lazımFonksiyonların kullanımı
<paket>.<fonksiyon>
şeklindedir
✨ Fonksiyon İşlemleri
Kodların derlenme yapısı yukarıdan aşağı olduğu için fonksiyonlar, yukarıda (önceden) tanımlanmadan kullanılamaz.
💎 Fonksiyon Parametreleri
Fonksiyonlar tanımlandığı vakit varsayılan atamalar yapılır.
Bu yüzden zaman hesaplama gibi işlemleri burada yapmanız mantıklı olmayacak, zaman farkı 0 olarak gelecektir.
🧱 Fonksiyon Türleri
💚 Özyineleyen Fonksiyonların Avantajları
Özyineleyen fonksiyonlar kodun daha temiz ve zarif gözükmesini sağlar
Karmaşık bir görev alt görevlere ayrılarak rahat çözülebilir
İç içe döngülere göre daha iyidir
💔 Özyineleyen Fonksiyonların Zararları
Bazı durumlarda anlaşılabilmesi zordur
Uzun tekrarlarda çok fazla vakit ve zaman harcarlar
Hata ayıklama oldukça zordur
🤯 Global, Local ve Nonlocal Kavramları
global
Tüm modülde geçerli değişkenler
Okuma
local
Fonksiyonların içerisindeki yerel değişkenler
Okuma ve Yazma
nonlocal
Modül ile fonksiyon arasında kalan, genellikle iç içe fonksiyonlarda kullanılan değişkenler
🏃♂️ Fonksiyonlarda Hız
Fonksiyonlarda işlem yapılma hızı, manuel (kod satırı olarak) işlem yapılmasından daha hızlıdır.
~%80 daha hızlı çalıştığını script üzerinden görebilirsiniz
Bu değer bilgisayar donanımınıza göre değişiklik gösterecektir
Hafızayı (memorial) kullanan fonksiyonlar tekrarlı (recursive) fonksiyonlardan daha hızlıdır.
Ek kaynaklar:
🐥 Fonksiyon Parametre Tipleri
Last updated
Was this helpful?