Returnering af flere værdier
Returnér tupler fra en funktion.
Returnering af flere værdier er en gratis Mojo Academy-lektion på CoddyKit. Dette er lektion 3 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Mojo Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Mojo Academy-kurset indeholder 4 lektioner i alt.
Mere end ét resultat
Nogle gange producerer en funktion naturligt to svar på én gang. I Mojo kan du give dem alle tilbage samlet ved hjælp af en tuple.
Returnér en tuple
Angiv værdierne adskilt af kommaer i returneringen. Mojo samler dem i én tuple, som kalderen kan pakke ud.
fn min_max(a: Int, b: Int) -> (Int, Int):
if a < b:
return (a, b)
return (b, a)Deklarér tuple-typen
Piltypen angiver hver plads. Her fortæller (Int, Int) læseren og compileren præcis, hvad der kommer tilbage.
fn split() -> (String, Int): ...Pak resultatet ud
Kalderen kan pakke tuplen ud i separate navne på én linje, så hver værdi straks får en tydelig identitet.
lo, hi = min_max(8, 3)
print(lo) # 3Navnene følger rækkefølgen
Udpakning følger positionen. Det første navn får den første værdi, og det andet navn får den anden, så rækkefølgen skal stemme med returneringen.
low, high = min_max(8, 3)Eller behold hele tuplen
Du behøver ikke pakke den ud. Gem tuplen i én variabel, og hent et element efter indeks, når du har brug for det.
pair = min_max(8, 3)
print(pair[0]) # 3Hvorfor ikke bare én returnering?
Ved at samle relaterede resultater holder du dem sammen. At returnere både en værdi og dens status i én tuple er renere end at sprede dem ud over globale variabler.
fn parse() -> (Int, Bool): ... # value and successTupler kan blande typer
En tuple er ikke begrænset til én type. Du kan returnere en String og en Int side om side, hvor hver bevarer sin egen type.
fn user() -> (String, Int):
return ("Ada", 36)Læsning af returneringer med flere værdier
Når du ser en pil, der peger på parenteser, kan du forvente flere resultater. Signaturen er dit kort til, hvordan du pakker dem ud.
Hold tupler små og tydelige
To eller tre værdier i en tuple er lette at læse. Hvis du har brug for mange, udtrykker en navngiven struct normalt hensigten bedre end en lang tuple.
Et almindeligt mønster
At returnere et resultat sammen med en fejl eller et flag er en klassisk brug af tupler. Kalderen pakker begge ud og reagerer på dem én ad gangen.
value, ok = try_parse(text)Hurtigt tjek
Hvordan giver en Mojo-funktion mere end én værdi tilbage på én gang?
Opsummering: Saml og pak ud
Returnér flere resultater som en tuple, deklarér dens type i signaturen, og pak den derefter ud efter position. Hold tupler små, eller brug en struct.
Lær Mojo med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 30
- Lektioner
- 120
Ofte stillede spørgsmål
Er lektionen “Returnering af flere værdier” gratis?
Ja — alle 3 lektioner i læringssporet Mojo Academy, inklusive “Returnering af flere værdier”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Mojo Academy-kurset indeholder 4 lektioner i alt.
Hvad lærer jeg i “Returnering af flere værdier”?
Returnér tupler fra en funktion. Du øver dig i Mojo Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på Mojo Academy?
Der kræves ingen tidligere erfaring. Mojo Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 3 af 4.
Hvor lang tid tager lektionen “Returnering af flere værdier”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne Mojo Academy-lektion?
Ja. Alle Mojo Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.
Alle lektioner i dette kursus
- Positionelle argumenter og keyword-argumenter
- Standardværdier for argumenter
- Returnering af flere værdier
- Læs funktionssignaturer