Funktioner i Python - eller enhver programmeringssprog - ofte tage argumenter - eller parametre - hvilket repræsenterer værdier funktionen vil bruge under dens drift. Mens en funktion kan tage 0 parameter , ved at bruge syntaksen i Python, kan en funktion tage mange argumenter , eller argumenter defineret med standardværdier , eller endda variabel argument lister til vilkårlig længde. Funktioner og parametre
En typisk Python funktion vil indeholde nul eller flere parametre. Som et eksempel er her en funktion definition, herunder nogle parametre :
def nameSquare (x, navn) : Hej
/* funktionens kode * /
Funktionen nameSquare vil udføre uanset beregninger , der er en del af sin kode , ved hjælp af definerede parametre . Men når en programmør kalder funktionen til brug , behøver han ikke kender andet end den funktion nameSquare kræver to variabler, et heltal " x " og en streng " navn. " At kalde dette funktion fra anden kode , skal en programmør levere to - og kun to - variabler eller værdier :
x = nameSquare (y , z)
y = nameSquare (5, ' Bob ' )
z = nameSquare (8) //Fejl . Andet argument ikke defineret
standardparametre
I visse scenarier kan en programmør vælge at have visse argumenter i en funktion definition standard til en bestemt værdi. Ved hjælp af nameSquare funktionen kan parameteren "navn" standard til en streng, der repræsenterer et navn : Hej
def nameSquare (x , navn = ' bob ' ) : Hej
Nu, når programmøren kalder funktion i koden , behøver han ikke levere en værdi for det andet argument (navn) . Programmøren kan levere et argument , bør han ønsker at tilsidesætte standard : Hej
y = nameSquare (5)
z = nameSquare (4 , 'Robert ' )
< br >
Keyword argumenter
Lignende til at definere standardværdier for argumenter , kan en programmør også definere en række søgeord argumenter ved at skabe søgeords- værdi-par . Betragt nameSquare som et eksempel : Hej
def nameSquare (x , navn = ' bob ' , title = ' konge ' , hobby = ' frimærker ' ) : Hej
alle søgeord eller standard argumenter skal følge kræves argumenter ( x ) . Det krævede argument må også altid komme før søgeord argumenter, når en bruger kalder en funktion. Dog kan søgeord argumenter selv blive kaldt i vilkårlig rækkefølge , så længe den rigtige søgeord er brugt : Hej
x = nameSquare (x , navn = ' harry ' hobby = ' frimærker ')
y = nameSquare (x )
z = nameSquare (x, title = ' konge ' )
z = nameSquare (navn = ' George' ) //fejl , mangler ' x' argument < br >
variabel Argument Lister
kan også en funktion har en variabel liste med argumenter ved brug af " * args " søgeord . En variabel argument list betyder blot, at brugeren kan indtaste en vilkårlig mængde af argumenter i en funktion, som vil funktionen parse : Hej
def nameSquare (x, * args ) : Hej
Inden funktionen , * args repræsenterer en samling af de variable argumenter leveret af programmøren . Argumenterne i "* args " er tilgængelige inden funktionen ved indeks ( * args [0] , * args [1 ]). Den variable argument Listen skal forekomme som den sidste parameter leveres i definitionen.
X = nameSquare (x , y, z, 4, 5) //* args [0] er y , * args [1] er z , etc.
y = nameSquare (x , 2, 4 ) //* args [0] er 2, * args [1] er 4.