Nur-Positions-Parameter in Python3.8
Python führt die neue Funktionssyntax in der Python3.8.2- Version ein. Hier können wir den /
Schrägstrich einführen , um den Parameter nur für die Position zu vergleichen, der vor dem /
Schrägstrich steht, und die Parameter, die danach kommen, *
sind nur Argumente für Schlüsselwörter. Der Rest der Argumente, die dazwischen liegen /
und *
entweder ein Positions- oder ein Schlüsselwortargument sein können.
Das heißt, wir können Positionsargumente und reguläre Argumente so kombinieren, dass alle nicht positionellen Argumente nach einem /
Schrägstrich kommen.
Syntax:
Def-Funktion (a, b, /, c, d, *, e, f): # Funktionskörper bestehen
Wenn a und b Positionsargumente sind, können c und d entweder Positionsargumente oder Schlüsselwörter sein, oder e und f sind ausschließlich Schlüsselwortargumente.
In der Abbildung unten sehen wir, dass die Potenzfunktion eine in Pythons Mathematikbibliothek integrierte Funktion ist. Diese Funktion verwendet einen /
Schrägstrich, um das Argument nur für die Position zu aktivieren. Jetzt können wir dieselbe Funktionalität mithilfe dieser Version implementieren.
Beispiel 1:
In diesem Beispiel können wir sehen, dass wir mit dem Argument "Nur Position" die Funktion mit der festen Position implementieren können, wie wir es nur in integrierten Funktionen vor dieser Python-Version sagen können. Auf diese Weise können wir unser Programm robuster machen.
def
function(a, b,
/
, c, d,
*
, e, f):
(a, b, c, d, e, f)
function(
1
,
2
,
3
, d
=
4
, e
=
5
, f
=
6
)
function(
1
,
2
,
3
, d
=
4
,
5
, f
=
6
)
Ausgabe :
Beispiel 2:
def
function(a, b,
/
,
*
*
kwargs):
(a, b, kwargs)
function(
1
,
2
, a
=
4
, b
=
5
, c
=
6
)
function(a
=
1
,
2
, a
=
4
, b
=
5
, c
=
6
)
Ausgabe :