Python Python Fonksiyonlar 2026 Güncel

Python Değişken Sayıda Parametre: Args

3 dk okuma süresi 560 görüntülenme 2024-09-08 4.9 (14 değerlendirme)

Python'da değişken sayıda parametre almak için *args kullanılır. *args, bir fonksiyona kaç tane argüman gönderileceğini bilmediğimiz durumlarda kullanılır ve bu argümanlar bir tuple (demet) olarak işlenir. *args sayesinde fonksiyonlara istediğimiz kadar pozisyonel argüman gönderebiliriz.

Temel Yapı

def fonksiyon_adi(*args): # args, bir tuple olarak çalışır for arg in args: print(arg)
  • *args, bir tuple olarak tüm pozisyonel argümanları alır.
  • İstediğiniz kadar argüman gönderebilirsiniz.

Örnek: Kullanımı

Aşağıdaki örnekte, bir fonksiyon yazalım ve ona kaç tane sayı verilirse verilsin bu sayıların toplamını hesaplayalım.

def sayilari_topla(*args): return sum(args) # Farklı sayıda argümanlarla fonksiyonu çağırabiliriz print(sayilari_topla(1, 2, 3)) # Çıktı: 6 print(sayilari_topla(10, 20, 30, 40)) # Çıktı: 100

ile Döngü Kullanımı

*args parametresine gelen argümanları bir döngü ile işleyebiliriz. Örneğin, bu argümanları tek tek yazdıran bir fonksiyon yazalım:

def bilgileri_yaz(*args): for arg in args: print(arg) # Fonksiyonu çağırarak argümanları döngüyle işleyebiliriz bilgileri_yaz("Ahmet", 25, "Mühendis", "İstanbul")

Çıktı:

Ahmet 25 Mühendis İstanbul

Pozisyonel Argümanlar ile Birlikte Kullanımı

Fonksiyonunuzda *args ile birlikte diğer pozisyonel argümanları da kullanabilirsiniz. Ancak, normal pozisyonel argümanlar her zaman *args'tan önce gelmelidir.

def selamla(mesaj, *isimler): for isim in isimler: print(f"{mesaj}, {isim}!") # Bir mesaj ve birden fazla isim gönderebiliriz selamla("Merhaba", "Ahmet", "Ayşe", "Mehmet")

Çıktı:

Merhaba, Ahmet! Merhaba, Ayşe! Merhaba, Mehmet!

ve Varsayılan Parametreler

*args ile varsayılan parametreleri de aynı fonksiyonda kullanabilirsiniz. Varsayılan parametreler, *args'tan önce veya sonra gelebilir, ancak *args'tan sonra olan varsayılan parametrelerin keyword arguments ile çağrılması gerekir.

def bilgi_gir(isim, *args, yas=18 ): print(f"İsim: {isim}, Yaş: {yas}") print("Diğer bilgiler:", args) # Yaş belirtilmezse varsayılan değer kullanılacak bilgi_gir("Ahmet", "Mühendis", "İstanbul") # Varsayılan yaş: 18 # Yaş belirtilirse verilen değer kullanılacak bilgi_gir("Ayşe", "Doktor", "Ankara", yas=30) # Yaş: 30

Çıktı:

İsim: Ahmet, Yaş: 18 Diğer bilgiler: ('Mühendis', 'İstanbul') İsim: Ayşe, Yaş: 30 Diğer bilgiler: ('Doktor', 'Ankara')

ile Liste veya Tuple Göndermek

Eğer bir liste ya da tuple'ı *args olarak bir fonksiyona göndermek isterseniz, bu veri yapısının başına * ekleyerek elemanlarını ayırabilirsiniz.

def sayilari_topla(*args): return sum(args) liste = [1, 2, 3, 4] tuple_dizi = (5, 6, 7) # Liste veya tuple'daki elemanları fonksiyona gönderebiliriz print(sayilari_topla(*liste)) # Çıktı: 10 print(sayilari_topla(*tuple_dizi)) # Çıktı: 18

Özet

  • *args ile bir fonksiyona değişken sayıda pozisyonel argüman gönderebilirsiniz.
  • *args, gelen argümanları bir tuple olarak işler.
  • Pozisyonel argümanlar, *args'tan önce tanımlanmalı, aksi takdirde hata oluşur.
  • Varsayılan parametreler ve *args birlikte kullanılabilir, ancak doğru sıralama önemlidir.
Bu Dersi Değerlendirin

Bu ders size yardımcı oldu mu? Puan verin!

Geri bildiriminiz içeriğimizi sürekli güncel ve kaliteli tutmamızı sağlar.

4.9 / 5 (Toplam 14 oy kullanıldı)

Sıkça Sorulan Sorular (SSS)

Bu ders ve konuyla ilgili en çok merak edilenler

Python Değişken Sayıda Parametre: Args dersini öğrenmek için ön koşul var mı?

Bu eğitim temel seviyeden ileri seviyeye adım adım hazırlanmıştır. Kodları kopyalayıp Canlı Editör üzerinde test ederek kolayca pratik yapabilirsiniz.

Örnek kodları kendi projelerimde ücretsiz kullanabilir miyim?

Evet, PHP Hocası üzerindeki tüm kod örnekleri açık kaynak mantığıyla sunulmaktadır. Ticari veya kişisel projelerinizde serbestçe kullanabilirsiniz.

Takıldığım bir yerde nereden soru sorabilirim?

Dersin altındaki topluluk yorumları bölümünden sorunuzu sorabilirsiniz. Eğitmenlerimiz ve topluluk üyelerimiz kısa sürede yanıt verecektir.

Paylaş:
PHP Hocası Akademi

Topluluk Yorumları (0)

Ders Hakkında Yorum Yap veya Soru Sor

Henüz yorum yapılmamış. İlk yorumu siz yazın!