Python-funksjon med parametere

Python-funksjon med parametere


Funksjoner i Python - eller alle programmeringsspråk - ofte ta argumenter - eller parametere - som representerer verdier funksjonen vil bruke under sin drift. Mens en funksjon kan ta 0 parametere ved å bruke syntaksen til Python, kan en funksjon ta mange argumenter, eller argumenter som er definert med standardverdier, eller til og med variable argumentlister vilkårlig lengde.

Funksjoner og parametre

En typisk Python funksjon skal inneholde null eller flere parametere. Som et eksempel er her en funksjonsdefinisjon inkludert noen parametere:

def nameSquare (x, navn):

/ Funksjon kode /

Funksjonen nameSquare vil utføre hva beregninger som er en del av sin kode, ved hjelp av definerte parametere. Imidlertid, når en programmerer kaller funksjonen for bruk, behøver han ikke vet noe annet enn den funksjon nameSquare krever to variable, et helt tall "x" og en streng "navn". Å kalle denne funksjonen fra annen kode, må en programmerer gi to - og bare to - variabler eller verdier:

x = nameSquare (y, z)

y = nameSquare (5 'Bob')

z = nameSquare (8) // Error. Andre argumentet ikke definert

standardparametere

I visse tilfeller kan en programmerer velge å ha visse argumenter i en funksjonsdefinisjon standard til en viss verdi. Bruke nameSquare funksjon, parameter "navn" kan standard til en streng som representerer et navn:

def nameSquare (x, name = 'bob'):

Nå, når programmereren kaller funksjonen i kode, han trenger ikke levere en verdi for det andre argumentet (navn). Programmereren kan levere et argument, bør han ønsker å overstyre standard:

y = nameSquare (5)

z = nameSquare (4, 'Robert')

Nøkkelordargumenter

Samme som å definere standardverdier for argumenter, kan en programmerer også definere en rekke søkeord argumenter ved å skape søkeord-verdi-par. Tenk nameSquare som et eksempel:

def nameSquare (x, name = 'bob', title = "kongen", hobby = 'frimerker'):

Eventuelle søkeord eller standardargumenter må følge de nødvendige argumentene (x). Den nødvendige argumentet må også alltid komme før søkeord argumenter når en bruker kaller en funksjon. Men søkeord argumenter selv kan bli kalt i den rekkefølgen, så lenge den riktige nøkkelordet brukes:

x = nameSquare (x, name = 'harry', hobby = 'frimerker')

y = nameSquare (x)

z = nameSquare (x, title = "kongen")

z = nameSquare (name = 'George') // feil, mangler 'x' argument

Variable Argumentlister

Dessuten kan en funksjon har en variabel argumentliste gjennom bruk av "* args" søkeord. En variabel argument liste ganske enkelt betyr at brukeren kan skrive inn en vilkårlig mengde argumenter inn i en funksjon, hvor funksjonen vil analysere:

def nameSquare (x, * args):

I funksjonen, argument representerer en samling av de variable argumentene som leveres av programmereren. Argumentene i "args" er tilgjengelige i funksjonen ved indeks (args [0], args [1]). Den variable argumentlisten må skje som siste parameter leveres i definisjonen.

x = nameSquare (x, y, z, 4, 5) // args [0] y, args [1] er z, etc.

y = nameSquare (x, 2, 4) // args [0] er to, args [1] er 4