I denne artikkelen lærer du om funksjoner, hva en funksjon er, syntaksen, komponenter og typer funksjoner. Du lærer også å lage en funksjon i Python.
Video: Introduksjon til Python-funksjoner
Hva er en funksjon i Python?
I Python er en funksjon en gruppe relaterte utsagn som utfører en bestemt oppgave.
Funksjoner hjelper deg med å bryte programmet vårt i mindre og modulære biter. Etter hvert som programmet vårt blir større og større, gjør funksjonene det mer organisert og håndterbart.
Videre unngår den repetisjon og gjør koden gjenbrukbar.
Funksjonens syntaks
def function_name (parameters): "" "docstring" "" statement (s)
Ovenfor vises en funksjonsdefinisjon som består av følgende komponenter.
- Nøkkelord
def
som markerer starten på funksjonsoverskriften. - Et funksjonsnavn for å identifisere funksjonen unikt. Funksjon navngivning følger de samme reglene for å skrive identifikatorer i Python.
- Parametere (argumenter) som vi overfører verdier til en funksjon. De er valgfrie.
- Et kolon (:) for å markere slutten på funksjonsoverskriften.
- Valgfri dokumentasjonsstreng (dokstring) for å beskrive hva funksjonen gjør.
- En eller flere gyldige pythonsetninger som utgjør funksjonsdelen. Uttalelser må ha samme innrykkingsnivå (vanligvis 4 mellomrom).
- En valgfri
return
setning for å returnere en verdi fra funksjonen.
Eksempel på en funksjon
def greet(name): """ This function greets to the person passed in as a parameter """ print("Hello, " + name + ". Good morning!")
Hvordan kaller jeg en funksjon i python?
Når vi har definert en funksjon, kan vi kalle den fra en annen funksjon, et program eller til og med Python-ledeteksten. For å ringe en funksjon skriver vi ganske enkelt funksjonsnavnet med riktige parametere.
>>> greet('Paul') Hello, Paul. Good morning!
Merk: Prøv å kjøre ovennevnte kode i Python-programmet med funksjonsdefinisjonen for å se utdataene.
def greet(name): """ This function greets to the person passed in as a parameter """ print("Hello, " + name + ". Good morning!") greet('Paul')
Docstrings
Den første strengen etter funksjonsoverskriften kalles docstring og er en forkortelse for dokumentasjonsstreng. Den brukes kort for å forklare hva en funksjon gjør.
Selv om det er valgfritt, er dokumentasjon en god programmeringspraksis. Med mindre du kan huske hva du spiste til middag i forrige uke, må du alltid dokumentere koden din.
I eksemplet ovenfor har vi en dokstring rett under funksjonsoverskriften. Vi bruker vanligvis trippel anførselstegn slik at dokstring kan strekke seg opp til flere linjer. Denne strengen er tilgjengelig for oss som __doc__
attributt for funksjonen.
For eksempel :
Prøv å kjøre følgende inn i Python-skallet for å se utdataene.
>>> print(greet.__doc__) This function greets to the person passed in as a parameter
For å lære mer om docstrings i Python, besøk Python Docstrings.
Returoppgaven
Den return
setningen brukes for å avslutte en funksjon og gå tilbake til stedet der det ble kalt.
Syntaks for retur
retur (expression_list)
Denne påstanden kan inneholde et uttrykk som blir evaluert og verdien returneres. Hvis det ikke er noe uttrykk i utsagnet eller selve return
utsagnet ikke er tilstede i en funksjon, vil funksjonen returnere None
objektet.
For eksempel:
>>> print(greet("May")) Hello, May. Good morning! None
Her None
er den returnerte verdien siden greet()
navnet direkte skrives ut og ingen return
uttalelser brukes.
Eksempel på retur
def absolute_value(num): """This function returns the absolute value of the entered number""" if num>= 0: return num else: return -num print(absolute_value(2)) print(absolute_value(-4))
Produksjon
2 4
Hvordan fungerer funksjon i Python?

Omfang og levetid for variabler
Omfanget av en variabel er den delen av et program der variabelen blir gjenkjent. Parametere og variabler definert i en funksjon er ikke synlige utenfor funksjonen. Derfor har de et lokalt omfang.
Levetiden til en variabel er perioden hele variabelen kommer ut i minnet. Levetiden til variabler i en funksjon er så lang som funksjonen kjøres.
De blir ødelagt når vi kommer tilbake fra funksjonen. Derfor vil en funksjon ikke huske verdien av en variabel fra tidligere samtaler.
Her er et eksempel for å illustrere omfanget av en variabel i en funksjon.
def my_func(): x = 10 print("Value inside function:",x) x = 20 my_func() print("Value outside function:",x)
Produksjon
Value inside function: 10 Value outside function: 20
Here, we can see that the value of x is 20 initially. Even though the function my_func()
changed the value of x to 10, it did not affect the value outside the function.
This is because the variable x inside the function is different (local to the function) from the one outside. Although they have the same names, they are two different variables with different scopes.
On the other hand, variables outside of the function are visible from inside. They have a global scope.
We can read these values from inside the function but cannot change (write) them. In order to modify the value of variables outside the function, they must be declared as global variables using the keyword global
.
Types of Functions
Basically, we can divide functions into the following two types:
- Innebygde funksjoner - Funksjoner som er innebygd i Python.
- Brukerdefinerte funksjoner - Funksjoner definert av brukerne selv.