Python'da Bir Fonksiyona Birden Fazla Parametre Aktarma
Birkaç sayısal parametre alan bir fonksiyonumuz olduğunu varsayalım:
def func(num1, num2):
return num1 + num2
print(func1(2, 3))
Fonksiyon çağrıldığında, belirtilen 2
ve 3 sayıları sırasıyla num1
ve num2 değişkenlerine atanacaktır.
Ancak, fonksiyon çağrısında önceden sayısı belli olmayan
çok sayıda parametre aktarmanın gerekli olduğu durumlar vardır. Python'da,
fonksiyon tanımlanırken, daha sonra çağrı sırasında iletilen tüm parametrelerin
bir demetini (tuple) oluşturacak tek bir değişken belirleyebilirsiniz.
Bunun için, bu değişkenin önüne * sembolü eklenmelidir.
Bu tür bir değişkene geleneksel olarak args adı verilir,
ancak herhangi başka bir isim de verilebilir. Tüm parametreleri
görüntülemek için, fonksiyon gövdesinde bu değişkeni, ancak bu sefer
* olmadan yazmak gerekir:
def func(*args):
return args
print(func(1, 2, 3)) # (1, 2, 3) yazdıracak
Daha sonra, elde edilen parametrelerle başka herhangi bir işlem yapılabilir. Toplamlarını alalım:
def func(*args):
return sum(args)
print(func(1, 2, 3)) # 6 yazdıracak
Sınırsız sayıda kullanıcı adını parametre olarak alan ve bunları bir demet (tuple) olarak konsola yazdıran bir fonksiyon yazın.