Standardværdier for argumenter
Gør nogle parametre valgfri.
Standardværdier for argumenter er en gratis Mojo Academy-lektion på CoddyKit. Dette er lektion 2 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.
Gør en parameter valgfri
En standardværdi lader en parameter have en værdi, den kan bruge automatisk. Hvis kalderen udelader den, bruger Mojo stille og roligt den værdi, du skrev i definitionen.
fn greet(name: String, times: Int = 1):
for _ in range(times):
print(name)Kald med og uden parameteren
Nu virker begge kald. Udelad times, og du får standardværdien 1; angiv den, og du tilsidesætter standardværdien for netop dette kald.
greet("Mojo") # times = 1
greet("Mojo", 3) # times = 3Hvorfor standardværdier er praktiske
Standardværdier dækker det almindelige tilfælde. De fleste kaldere ændrer aldrig indstillingen, men muligheden er der for dem, der har brug for den.
Standardværdier kommer sidst
Parametre med standardværdier skal komme efter de påkrævede parametre. Ellers kunne Mojo ikke vide, hvilken værdi du mente at springe over.
fn open(path: String, mode: String = "r"): ... # okEn form med påkrævet først og valgfrit sidst
Tænk på det som påkrævede først og valgfri sidst. Når du læser fra venstre mod højre, angiver du det nødvendige og accepterer derefter standardværdier for resten. Denne form er forudsigelig.
Tilsidesæt kun én standardværdi
Hvis du vil ændre en senere standardværdi og beholde de tidligere, skal du bruge et nøgleord. Så springer du direkte til den indstilling, du interesserer dig for.
fn make(width: Int = 80, height: Int = 24): ...
make(height=40) # width stays 80Flere standardværdier på én gang
En funktion kan give flere parametre standardværdier på én gang. Kaldere udfylder kun det, de ønsker, og lader resten falde tilbage til standarderne.
fn box(w: Int = 10, h: Int = 10, fill: String = "x"): ...Standardværdier skaber venlige API'er
Gode standardværdier gør en funktion nem at komme i gang med og kraftfuld at udvide. Begyndere kalder den enkelt, mens eksperter justerer indstillingerne.
Vælg en fornuftig standardværdi
Vælg den værdi, som de fleste kaldere alligevel ville ønske. En overraskende standardværdi er værre end ingen, fordi den skjuler en adfærd, som læseren ikke havde forventet.
Standardværdien evalueres én gang
Standardudtrykket hører til i signaturen, ikke i kroppen. Betragt det som en fast reserveværdi, der dokumenterer den normale værdi.
fn retry(count: Int = 3): ... # 3 is the documented normStandardværdier og nøgleord fungerer godt sammen
Standardværdier og nøgleordskald er et godt par. Sammen gør de det muligt at skrive funktioner med mange indstillinger, som stadig føles enkle at kalde.
request(url, timeout=30, retries=5)Hurtigt tjek
Hvor skal en parameter med en standardværdi placeres i en Mojo-funktion?
Opsummering: Smarte reserveværdier
Standardværdier gør parametre valgfri og dækker det almindelige tilfælde. Placer dem sidst, vælg dem med omhu, og tilsidesæt enkelte med nøgleord.
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 “Standardværdier for argumenter” gratis?
Ja — alle 3 lektioner i læringssporet Mojo Academy, inklusive “Standardværdier for argumenter”, 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 “Standardværdier for argumenter”?
Gør nogle parametre valgfri. 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 2 af 4.
Hvor lang tid tager lektionen “Standardværdier for argumenter”?
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