2016-07-06 12 views

Antwort

6

Wenn Sie alle args fangen, bevor die Schlüsselwort-Argumente:

>>> def my_fun(*arg, a=1, b=2): 
...  print (a) 
...  print (b) 
...  print (arg) 
... 
>>> my_fun(3,4,5) 
1 
2 
(3, 4, 5) 

Und a und b kann, indem man sie als benannte Parameter geändert werden:

>>> my_fun(3,4,5, a=10, b=11) 
10 
11 
(3, 4, 5) 
1

Was fragen Sie für nicht sinnvoll.

Wenn ich Ihre Logik folgen, egal, wie Sie Ihre Funktion aufrufen, a und b immer 1 und 2 sein.

+0

Ich habe einen Fehler in Frage gemacht, ich möchte die Fähigkeit zu ändern a und b Variablen – Demaunt

+0

Das war mir klar. Zeigen Sie ein Beispiel, in dem Sie die Funktion aufrufen und 'a' ist nicht' 1'. –

+0

änderte Frage, sry für Fehler am Anfang. Ich möchte optionale Argumente zwischen "a" und "* arg" setzen. Aber verstehe nicht, wie python definieren kann, welcher Wert zu * arg gehört und welche zu der optionalen Variable – Demaunt

Verwandte Themen