Python Academy · leksjon

Definere og kalle funksjoner

Opprett funksjoner med def, og kall dem med argumenter.

Leksjon 1 av 414 trinn

Definere og kalle funksjoner er en gratis leksjon i Python Academy på CoddyKit. Dette er leksjon 1 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Python Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Python Academy inneholder totalt 4 leksjoner.

Introduksjon

Funksjoner er gjenbrukbare kodeblokker som defineres med def. De unngår gjentakelser og gjør programmer enklere å teste og vedlikeholde.

def-nøkkelordet

def greet(name): definerer en funksjon. Kroppen rykkes inn. Kall den med greet('Alice').
def greet(name):
    print('Hello', name)
greet('Alice')

Posisjonsargumenter

Argumenter sendes inn etter posisjon. def add(a, b): return a + b — add(3,4) gir 7.
def add(a, b):
    return a + b
print(add(3, 4))

return-setningen

return sender en verdi tilbake til den som kalte funksjonen. En funksjon uten return returnerer implisitt None.
def square(x):
    return x * x
result = square(5)
print(result)

Flere returverdier

def min_max(lst): return min(lst), max(lst) returnerer en tuppel. Pakk den ut slik: lo, hi = min_max(lst).
def min_max(lst):
    return min(lst), max(lst)
lo, hi = min_max([3,1,4,1,5])
print(lo, hi)

Dokumentasjonsstrenger

Den første strengen i en funksjonskropp er funksjonens dokumentasjonsstreng: """One-line summary.""" Du får tilgang til den med help() eller func.__doc__.
def greet(name):
    """Return a greeting string."""
    return f"Hello {name}"
print(greet.__doc__)

Variabelt antall argumenter

def func(*args) samler ekstra posisjonsargumenter i en tuppel. Dette er nyttig når du ikke vet hvor mange argumenter det blir.
def total(*nums):
    return sum(nums)
print(total(1,2,3,4))

Funksjoner er objekter

Funksjoner er førsteklasses objekter. Du kan tilordne dem til variabler, sende dem som argumenter eller lagre dem i lister.
def double(x): return x * 2
fn = double
print(fn(5))

Kall med utpakking

args = [1,2]; f(*args) pakker ut en liste som posisjonsargumenter. d = {'a':1}; f(**d) pakker ut en dict som nøkkelordargumenter.
def add(a, b): return a + b
args = [3, 4]
print(add(*args))

Lambda-funksjoner

lambda x: x*2 er en anonym funksjon på én linje. Bruk den for korte tilbakekallinger; foretrekk navngitte funksjoner for alt som er mer komplekst.
double = lambda x: x * 2
print(double(5))
print(list(map(lambda x: x**2, [1,2,3])))

Nestede funksjoner

Funksjoner kan defineres inne i andre funksjoner. Den indre funksjonen har tilgang til de lokale variablene i den ytre funksjonen (closure).
def outer(x):
    def inner(y):
        return x + y
    return inner
add5 = outer(5)
print(add5(3))

Kort sjekk

Hva returnerer en funksjon hvis den ikke har en eksplisitt return-setning?

Oppsummering

Funksjoner: def name(args): body. return sender verdier tilbake. Flere returverdier gis via en tuppel. Lambdafunksjoner brukes til enkle uttrykk på én linje. Funksjoner er førsteklasses objekter.

Fortsett

Godt jobbet! Gå videre til neste leksjon for å fortsette fremgangen din.
Gratis å komme i gang

Lær deg Python med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
76
Leksjoner
320

Ofte stilte spørsmål

Er leksjonen «Definere og kalle funksjoner» gratis?

Ja – hele teksten i «Definere og kalle funksjoner» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Python Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Python Academy inneholder totalt 4 leksjoner.

Hva lærer jeg i «Definere og kalle funksjoner»?

Opprett funksjoner med def, og kall dem med argumenter. Du øver på Python Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med Python Academy?

Ingen tidligere erfaring er nødvendig. Python Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.

Hvor lang tid tar leksjonen «Definere og kalle funksjoner»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne Python Academy-leksjonen?

Ja. Alle Python Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Definere og kalle funksjoner
  2. Standard- og nøkkelordargumenter
  3. args og kwargs
  4. Returverdier og virkefelt
← Tilbake til Python Academy