Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Lambda-Funksjoner | Høyereordensfunksjoner og Lambdaer
Funksjonelle Programmeringskonsepter i Python

bookLambda-Funksjoner

Sveip for å vise menyen

Lambda-funksjoner er en kjernefunksjon i Python som lar deg lage små, anonyme funksjoner med en kortfattet syntaks. Hovedformålet med en lambda-funksjon er å definere en funksjon på én linje, vanligvis for korte, engangsbruk der en full funksjonsdefinisjon med def ville vært unødvendig omstendelig.

Lambda-funksjoner brukes oftest i kombinasjon med høyereordens funksjoner som map, filter og sorted, der du må sende en funksjon som argument, men ikke ønsker å definere en full funksjon andre steder i koden din.

En lambda-funksjon kan ta et vilkårlig antall argumenter, men må kun inneholde ett enkelt uttrykk. Resultatet av dette uttrykket returneres automatisk. Selv om lambda-funksjoner er nyttige for å lage raske, midlertidige funksjoner, har de begrensninger: de kan ikke inneholde flere setninger, tildelinger eller kompleks logikk, og de blir mindre lesbare hvis de brukes for mye. På grunn av disse begrensningene bør lambda-funksjoner brukes til enkle oppgaver, og vanlige funksjoner foretrekkes for mer komplekse operasjoner.

123
numbers = [1, 2, 3, 4, 5] squared = list(map(lambda x: x ** 2, numbers)) print(squared)
copy

Koden ovenfor bruker en lambda-funksjon sammen med den høyereordens funksjonen map for å kvadrere hvert tall i listen numbers. lambda x: x ** 2 definerer en anonym funksjon som tar ett argument x og returnerer kvadratet av det. Denne tilnærmingen gjør det mulig å raskt utføre en enkel operasjon på hvert element i en liste uten å definere en egen navngitt funksjon, noe som gjør koden mer konsis og fokusert når funksjonen kun trengs én gang.

123
numbers = [1, 2, 3, 4, 5, 6] evens = list(filter(lambda x: x % 2 == 0, numbers)) print(evens)
copy

Dette eksempelet bruker en lambda-funksjon sammen med filter for å hente ut kun de partallene fra listen numbers. Ved å bruke en lambda-funksjon her blir filtreringslogikken kortfattet og lettlest, spesielt når du bare trenger å utføre en enkel sjekk uten å lage en egen navngitt funksjon.

1. Hva er hovedforskjellen mellom en lambda-funksjon og en vanlig funksjon?

2. Når bør du bruke en lambda-funksjon i stedet for def?

question mark

Hva er hovedforskjellen mellom en lambda-funksjon og en vanlig funksjon?

Velg det helt riktige svaret

question mark

Når bør du bruke en lambda-funksjon i stedet for def?

Velg det helt riktige svaret

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 5

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Seksjon 2. Kapittel 5
some-alt