In Python ist es möglich, den obigen Code ohne eine Ausnahme zu haben?
%Vor%Normalerweise starte ich in PHP eine Funktion ohne Parameter und lade dann die Parameter innerhalb der Funktion ab.
In der Praxis möchte ich keine Argumente in myfunc deklarieren und dann einige Argumente übergeben. Die einzige Lösung, die ich gefunden habe, ist myfunc(*arg)
. Gibt es andere Methoden?
Und um die Frage tatsächlich zu beantworten: Nein, ich glaube nicht, dass es andere Wege gibt.
Der Hauptgrund ist ziemlich einfach: C python ist stack-basiert. Für eine Funktion, die keine Parameter benötigt, wird im Stack kein Platz zugewiesen ( (siehe Kommentare) myFunc
, stattdessen befinden sie sich an Position 0 und 1).
Ein weiterer Punkt ist, wie würden Sie sonst auf die Parameter zugreifen?
Es gibt zwei Möglichkeiten, um Argumente in
zu übergebenNach Position
%Vor%Nach Keyword
%Vor%Und Sie können eine Kombination aus beiden verwenden
%Vor%