Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Brugerdefinerede Funktioner | Funktioner
Introduktion til Python

Stryg for at vise menuen

book
Brugerdefinerede Funktioner

En brugerdefineret funktion er en kodeblok, som du opretter for at udføre en specifik opgave. I modsætning til indbyggede funktioner, som leveres af Python, er brugerdefinerede funktioner skrevet af dig for at løse specifikke problemer i dine programmer. Når de først er defineret, kan disse funktioner genbruges flere gange, hvilket gør din kode mere organiseret, effektiv og lettere at vedligeholde.

Lad os nu se, mens Alex demonstrerer, hvordan man opretter og bruger brugerdefinerede funktioner til at forenkle opgaver:

Den grundlæggende struktur af en brugerdefineret funktion i Python ser sådan ud:

python
  • def : dette nøgleord bruges til at starte definitionen af en funktion ;

  • function_name : dette er det navn , du giver til din funktion. Det bør være beskrivende for, hvad funktionen gør, hvilket gør din kode mere læsbar;

  • argument_1, argument_2 : disse er navnene på de variabler , som du sender ind i funktionen. De fungerer som pladsholdere for de værdier, du vil give, når du kalder funktionen. En funktion kan have nul eller flere parametre;

  • Kolon : angiver starten på funktionens kodeblok ;

  • # Code block : dette er funktionens krop , hvor du skriver den kode, som funktionen vil udføre. Det skal være indrykket ligesom når man skriver loops eller betingede udsagn;

  • return : denne erklæring bruges til at afslutte funktionen og returnere et resultat . Ikke alle funktioner behøver en return-erklæring, men det er nyttigt, når du vil sende en værdi tilbage til det sted, hvor funktionen blev kaldt.

Parametre og Argumenter

Parametre er de variabler, der er angivet inde i parenteserne i funktionsdefinitionen. De bruges til at modtage værdier (argumenter), der sendes ind i funktionen.

Argumenter er de faktiske værdier, du giver til funktionen, når du kalder den. Disse værdier tildeles til funktionens parametre.

1234
def greet_customer(name): print(f"Hello, {name}! Welcome to our store.") greet_customer("Alice")
copy

Bemærk

I eksemplet ovenfor er name parameteren, og strengen "Alice" er argumentet.

Void-funktioner

Som vist ovenfor, behøver ikke alle funktioner at returnere en værdi. Nogle funktioner udfører en opgave, men returnerer ikke noget til den, der kalder dem. Disse kaldes void-funktioner.

I Python er en void-funktion en brugerdefineret funktion, der enten mangler en return-sætning eller har en return-sætning, der ikke returnerer nogen værdi. I begge tilfælde vil funktionen returnere None som standard.

I eksemplet ovenfor er greet_customer() en void-funktion, fordi den udfører handlingen at udskrive en hilsen, men returnerer ikke noget resultat, der kan gemmes eller bruges andre steder i programmet.

Eksempel på Void-funktion

Her er et andet eksempel på en void-funktion, hvor return-sætningen bruges til at afslutte funktionens udførelse, men stadig ikke returnerer nogen værdi.

123456789101112131415161718192021
# Function to check stock levels of grocery items def check_stock(inventory): for item, stock in inventory.items(): if stock < 10: print(f"Warning: {item} is running low on stock with only {stock} units left!") print("Please restock the item before proceeding with the check.") return # Stops the function if stock is below 10 print(f"{item} has sufficient stock: {stock} units.") print("All items have sufficient stock.") # Example inventory of a grocery store inventory = { "Apples": 50, "Bananas": 30, "Milk": 8, # This will trigger the early exit "Bread": 25 } # Check stock levels check_stock(inventory)
copy

Eksempel på Anvendelse

Lad os nu overveje en funktion, der returnerer en specifik værdi. For eksempel, hvis du ofte har brug for at beregne rabatter for forskellige produkter i din butik, kan du oprette en funktion til at udføre rabatberegningen. Denne funktion kan derefter genbruges, når det er nødvendigt.

1234567891011121314
# `cost` and `discount_rate` are the parameters of the function def calculate_discounted_price(cost, discount_rate): final_price = cost * (1 - discount_rate) return final_price # Call the `calculate_discounted_price` function and pass in `cost` and `discount_rate` values as arguments apples_final_price = calculate_discounted_price(1.2, 0.10) milk_final_price = calculate_discounted_price(2.2, 0.15) bread_final_price = calculate_discounted_price(0.8, 0.05) # Display the discounted prices print(f"The discounted price of apples is ${apples_final_price}") print(f"The discounted price of milk is ${milk_final_price}") print(f"The discounted price of bread is ${bread_final_price}")
copy
Opgave

Swipe to start coding

Definér en funktion til at beregne de samlede omkostninger for et produkt ved at multiplicere dets pris og solgte mængde.

  • Opret en funktion kaldet calculate_total_cost() der tager to parametre: price og quantity.
  • Inden i funktionen, multiplicér price med quantity for at få de samlede omkostninger.
  • Returnér resultatet fra funktionen.

Outputkrav

  • Kald calculate_total_cost() med price = 1.50 og quantity = 10.
  • Print resultatet som:
    The total cost for apples is $<apples_total_cost>

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 6. Kapitel 3

Spørg AI

expand
ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

book
Brugerdefinerede Funktioner

En brugerdefineret funktion er en kodeblok, som du opretter for at udføre en specifik opgave. I modsætning til indbyggede funktioner, som leveres af Python, er brugerdefinerede funktioner skrevet af dig for at løse specifikke problemer i dine programmer. Når de først er defineret, kan disse funktioner genbruges flere gange, hvilket gør din kode mere organiseret, effektiv og lettere at vedligeholde.

Lad os nu se, mens Alex demonstrerer, hvordan man opretter og bruger brugerdefinerede funktioner til at forenkle opgaver:

Den grundlæggende struktur af en brugerdefineret funktion i Python ser sådan ud:

python
  • def : dette nøgleord bruges til at starte definitionen af en funktion ;

  • function_name : dette er det navn , du giver til din funktion. Det bør være beskrivende for, hvad funktionen gør, hvilket gør din kode mere læsbar;

  • argument_1, argument_2 : disse er navnene på de variabler , som du sender ind i funktionen. De fungerer som pladsholdere for de værdier, du vil give, når du kalder funktionen. En funktion kan have nul eller flere parametre;

  • Kolon : angiver starten på funktionens kodeblok ;

  • # Code block : dette er funktionens krop , hvor du skriver den kode, som funktionen vil udføre. Det skal være indrykket ligesom når man skriver loops eller betingede udsagn;

  • return : denne erklæring bruges til at afslutte funktionen og returnere et resultat . Ikke alle funktioner behøver en return-erklæring, men det er nyttigt, når du vil sende en værdi tilbage til det sted, hvor funktionen blev kaldt.

Parametre og Argumenter

Parametre er de variabler, der er angivet inde i parenteserne i funktionsdefinitionen. De bruges til at modtage værdier (argumenter), der sendes ind i funktionen.

Argumenter er de faktiske værdier, du giver til funktionen, når du kalder den. Disse værdier tildeles til funktionens parametre.

1234
def greet_customer(name): print(f"Hello, {name}! Welcome to our store.") greet_customer("Alice")
copy

Bemærk

I eksemplet ovenfor er name parameteren, og strengen "Alice" er argumentet.

Void-funktioner

Som vist ovenfor, behøver ikke alle funktioner at returnere en værdi. Nogle funktioner udfører en opgave, men returnerer ikke noget til den, der kalder dem. Disse kaldes void-funktioner.

I Python er en void-funktion en brugerdefineret funktion, der enten mangler en return-sætning eller har en return-sætning, der ikke returnerer nogen værdi. I begge tilfælde vil funktionen returnere None som standard.

I eksemplet ovenfor er greet_customer() en void-funktion, fordi den udfører handlingen at udskrive en hilsen, men returnerer ikke noget resultat, der kan gemmes eller bruges andre steder i programmet.

Eksempel på Void-funktion

Her er et andet eksempel på en void-funktion, hvor return-sætningen bruges til at afslutte funktionens udførelse, men stadig ikke returnerer nogen værdi.

123456789101112131415161718192021
# Function to check stock levels of grocery items def check_stock(inventory): for item, stock in inventory.items(): if stock < 10: print(f"Warning: {item} is running low on stock with only {stock} units left!") print("Please restock the item before proceeding with the check.") return # Stops the function if stock is below 10 print(f"{item} has sufficient stock: {stock} units.") print("All items have sufficient stock.") # Example inventory of a grocery store inventory = { "Apples": 50, "Bananas": 30, "Milk": 8, # This will trigger the early exit "Bread": 25 } # Check stock levels check_stock(inventory)
copy

Eksempel på Anvendelse

Lad os nu overveje en funktion, der returnerer en specifik værdi. For eksempel, hvis du ofte har brug for at beregne rabatter for forskellige produkter i din butik, kan du oprette en funktion til at udføre rabatberegningen. Denne funktion kan derefter genbruges, når det er nødvendigt.

1234567891011121314
# `cost` and `discount_rate` are the parameters of the function def calculate_discounted_price(cost, discount_rate): final_price = cost * (1 - discount_rate) return final_price # Call the `calculate_discounted_price` function and pass in `cost` and `discount_rate` values as arguments apples_final_price = calculate_discounted_price(1.2, 0.10) milk_final_price = calculate_discounted_price(2.2, 0.15) bread_final_price = calculate_discounted_price(0.8, 0.05) # Display the discounted prices print(f"The discounted price of apples is ${apples_final_price}") print(f"The discounted price of milk is ${milk_final_price}") print(f"The discounted price of bread is ${bread_final_price}")
copy
Opgave

Swipe to start coding

Definér en funktion til at beregne de samlede omkostninger for et produkt ved at multiplicere dets pris og solgte mængde.

  • Opret en funktion kaldet calculate_total_cost() der tager to parametre: price og quantity.
  • Inden i funktionen, multiplicér price med quantity for at få de samlede omkostninger.
  • Returnér resultatet fra funktionen.

Outputkrav

  • Kald calculate_total_cost() med price = 1.50 og quantity = 10.
  • Print resultatet som:
    The total cost for apples is $<apples_total_cost>

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 6. Kapitel 3
Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Vi beklager, at noget gik galt. Hvad skete der?
some-alt