Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erläuterung des Asterisk-Parameters der Python-Funktion

Detaillierte Erläuterung des Asterisk-Parameters der Python-Funktion

高洛峰
高洛峰Original
2016-10-20 09:50:042146Durchsuche

In der Definition der Funktion werden durch Hinzufügen eines Sternchens vor den Parametern die mehreren übergebenen Parameter in ein Objekt, Tupel oder Wörterbuch konvertiert, von dem man sagen kann, dass es diese Parameterwerte sammelt.

Fügen Sie vor dem Parameter ein Sternchen hinzu, um anzugeben, dass alle Werte im selben Tupel platziert sind und der Rückgabewert dieses Parameters ein Tupel ist.

Fügen Sie vor dem Parameter zwei Sternchen hinzu, um anzuzeigen, dass alle Werte im selben Wörterbuch abgelegt werden. Der Rückgabewert dieses Parameters ist ein Wörterbuch.

>>> def print_param(x, y, z = 3, *pospar, **keypar):
    print x,y,z
    print pospar
    print keypar
   
>>> print_param(3,4,5,6,7,8,m = 1,n = 2)
3 4 5
(6, 7, 8)
{'m': 1, 'n': 2}

Parameter zuweisen

Im Funktionsaufruf muss durch Hinzufügen eines Sternchens vor dem Parameter der übergebene Parameter ein Tupel oder sein Ein Wörterbuch kann seinen Wert in den Wert der entsprechenden Variablen umwandeln. Dieser Vorgang kann als Zuweisung von Parameterwerten angesehen werden.

Fügen Sie vor dem Parameter ein Sternchen hinzu, um anzuzeigen, dass der Tupelwert dem entsprechenden Funktionsparameterwert zugewiesen ist.

Fügen Sie vor dem Parameter zwei Sternchen hinzu, um anzuzeigen, dass der Wert im Wörterbuch dem Schlüssel zugewiesen ist. Der Schlüssel sollte als Parametername in der Definition der Funktion verwendet werden.

>>> def add(x,y):
    print x,y
    return x + y
   
>>> add(*param)
1 2
3
   
>>> def test(name,age):
    print name,age
   
>>> m = {'name':'xiaoli','age':'12'}
>>> test(**m)
xiaoli 12
>>> m = {'name':'xiaoli','age':12}
>>> test(**m)
xiaoli 12



Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn