Brukerdefinerte Funksjoner
En brukerdefinert funksjon er en kodeblokk som du oppretter for å utføre en spesifikk oppgave. I motsetning til innebygde funksjoner, som leveres av Python, er brukerdefinerte funksjoner skrevet av deg for å løse spesifikke problemer i programmene dine. Når de er definert, kan disse funksjonene gjenbrukes flere ganger, noe som gjør koden din mer organisert, effektiv og lettere å vedlikeholde.
La oss nå se på mens Alex demonstrerer hvordan man oppretter og bruker brukerdefinerte funksjoner for å forenkle oppgaver:
Den grunnleggende strukturen til en brukerdefinert funksjon i Python ser slik ut:
python
def
: dette nøkkelordet brukes til å starte definisjonen av en funksjon ;function_name
: dette er navnet du gir til funksjonen din. Det bør være beskrivende for hva funksjonen gjør, noe som gjør koden din mer lesbar;argument_1, argument_2
: dette er navnene på variablene som du sender inn i funksjonen. De fungerer som plassholdere for verdiene du vil gi når du kaller funksjonen. En funksjon kan ha null eller flere parametere;Kolonet
:
markerer starten på funksjonens kodeblokk ;# Code block
: dette er kroppen til funksjonen , der du skriver koden som funksjonen skal utføre. Den må være innrykket akkurat som når du skriver løkker eller betingede setninger;return
: denne setningen brukes til å avslutte funksjonen og returnere et resultat . Ikke alle funksjoner trenger en return-setning, men det er nyttig når du vil sende en verdi tilbake til der funksjonen ble kalt.
Parametere og Argumenter
Parametere er variablene som er oppført inne i parentesene i funksjonsdefinisjonen. De brukes til å motta verdier (argumenter) som sendes inn i funksjonen.
Argumenter er de faktiske verdiene du gir til funksjonen når du kaller den. Disse verdiene tildeles funksjonens parametere.
def greet_customer(name): print(f"Hello, {name}! Welcome to our store.") greet_customer("Alice")
Merk
I eksempelet ovenfor er
name
parameteren, og strengen"Alice"
er argumentet.
Void-funksjoner
Som vist ovenfor, trenger ikke alle funksjoner å returnere en verdi. Noen funksjoner utfører en oppgave, men returnerer ikke noe til den som kaller dem. Disse er kjent som void-funksjoner.
I Python er en void-funksjon en brukerdefinert funksjon som enten mangler en return
-setning eller har en return
-setning som ikke returnerer noen verdi. I begge tilfeller vil funksjonen returnere None
som standard.
I eksempelet ovenfor er greet_customer()
en void-funksjon fordi den utfører handlingen med å skrive ut en hilsen, men returnerer ikke noe resultat som kan lagres eller brukes andre steder i programmet.
Eksempel på void-funksjon
Her er et annet eksempel på en void-funksjon der return
-setningen brukes til å avslutte funksjonens utførelse, men fortsatt ikke returnerer noen verdi.
# 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)
Eksempelapplikasjon
La oss nå vurdere en funksjon som returnerer en spesifikk verdi. For eksempel, hvis du ofte trenger å beregne rabatter for forskjellige produkter i butikken din, kan du lage en funksjon for å utføre rabattberegningen. Denne funksjonen kan deretter gjenbrukes når det er nødvendig.
# `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}")
Swipe to start coding
Definer en funksjon for å beregne den totale kostnaden av et produkt ved å multiplisere dets pris og antall solgt.
- Lag en funksjon kalt
calculate_total_cost()
som tar to parametere:price
ogquantity
. - Inne i funksjonen, multipliser
price
medquantity
for å få den totale kostnaden. - Returner resultatet fra funksjonen.
Krav til utdata
- Kall
calculate_total_cost()
medprice = 1.50
ogquantity = 10
. - Skriv ut resultatet som:
Den totale kostnaden for epler er $<apples_total_cost>
Løsning
Takk for tilbakemeldingene dine!