next up previous contents index 6163656769
Next: 4.3 Kommentare Up: 4. Funktionen Previous: 4.1 Wertevorbelegung   Contents   Index

4.2 Beliebige Anzahl von Argumenten

Ist bei einer Funktion nicht klar, wie viele Argumente sie besitzen muss, so wird durch die Angabe eines Parameters der Form *name beim Aufruf ein beliebiges Tupel erstellt.

>>>def pruefe(*args):

...  if 2 in args: print 'Yes'

...  else: print 'No'

...

>>>pruefe (1,2,6)

'Yes'

Bedenken Sie, dass bei einer Festlegung der Form def name (a,*b): der erste Parameter ein beliebiges Objekt erwartet, aber der zweite Parameter *b den ganzen Rest (!) als Tupel übergibt.

Wenn eine Funktion nicht durch Stellung der Argeumente, sondern durch Schlüsselworte aufgerufen wird, so können überzählige Zuweisungen via **name in ein Dictionary übernommen werden. Zum Beispiel:

>>>def zeige(a,b,**c):

...  print c

...

>>>zeige (a=0, b=1, d=7, e=8)

{d:7, e:8}



Heiko Schroeder 2003-03-19