Domyślne wartości argumentów
Uczyń niektóre parametry opcjonalnymi.
Domyślne wartości argumentów to bezpłatna lekcja Mojo Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Mojo Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Mojo Academy zawiera 4 lekcji w sumie.
Uczynienie parametru opcjonalnym
Wartość domyślna pozwala użyć ustalonej wartości dla parametru. Jeśli wywołujący go pominie, Mojo po cichu użyje wartości zapisanej w definicji.
fn greet(name: String, times: Int = 1):
for _ in range(times):
print(name)Wywołanie z parametrem i bez niego
Teraz oba wywołania działają. Pomiń times, a otrzymasz domyślną wartość 1; przekaż ją, aby nadpisać wartość domyślną w tym konkretnym wywołaniu.
greet("Mojo") # times = 1
greet("Mojo", 3) # times = 3Dlaczego wartości domyślne są przydatne
Wartości domyślne opisują typowy przypadek. Większość wywołujących nigdy nie zmienia tej opcji, ale osoby, które jej potrzebują, nadal mogą z niej skorzystać.
Wartości domyślne na końcu
Parametry z wartościami domyślnymi muszą występować po parametrach wymaganych. W przeciwnym razie Mojo nie wiedziałoby, którą wartość chcesz pominąć.
fn open(path: String, mode: String = "r"): ... # okNajpierw wymagane, potem opcjonalne
Pomyśl o tym tak: najpierw parametry wymagane, a na końcu opcjonalne. Czytając od lewej do prawej, podajesz to, co konieczne, a następnie przyjmujesz wartości domyślne dla reszty. Taki układ jest przewidywalny.
Nadpisywanie tylko jednej wartości domyślnej
Aby zmienić późniejszą wartość domyślną, zachowując wcześniejsze, użyj argumentu nazwanego. Przechodzisz bezpośrednio do interesującej Cię opcji.
fn make(width: Int = 80, height: Int = 24): ...
make(height=40) # width stays 80Kilka wartości domyślnych naraz
Funkcja może nadać kilku parametrom wartości domyślne jednocześnie. Wywołujący podaje tylko te, które chce zmienić, a pozostałe pozostawia z wartościami domyślnymi.
fn box(w: Int = 10, h: Int = 10, fill: String = "x"): ...Wartości domyślne tworzą przyjazne interfejsy API
Dobre wartości domyślne ułatwiają rozpoczęcie pracy z funkcją i pozwalają stopniowo korzystać z jej większych możliwości. Początkujący wywołują ją w prosty sposób, a eksperci dostrajają opcje.
Wybór rozsądnej wartości domyślnej
Wybierz wartość, której i tak oczekiwałaby większość wywołujących. Zaskakująca wartość domyślna jest gorsza niż jej brak, ponieważ ukrywa działanie, którego czytelnik się nie spodziewał.
Wartość domyślna jest obliczana raz
Wyrażenie domyślne należy do sygnatury, a nie do ciała funkcji. Traktuj je jako stałą wartość zastępczą, która dokumentuje typową wartość.
fn retry(count: Int = 3): ... # 3 is the documented normWartości domyślne i argumenty nazwane świetnie się uzupełniają
Wartości domyślne i wywołania z argumentami nazwanymi tworzą świetne połączenie. Razem pozwalają pisać funkcje z wieloma opcjami, które nadal są proste w użyciu.
request(url, timeout=30, retries=5)Szybki test
Gdzie w funkcji Mojo musi znajdować się parametr z wartością domyślną?
Podsumowanie: inteligentne wartości zastępcze
Wartości domyślne sprawiają, że parametry są opcjonalne, i opisują typowy przypadek. Umieszczaj je na końcu, wybieraj rozważnie, a pojedyncze wartości nadpisuj za pomocą argumentów nazwanych.
Często zadawane pytania
Czy lekcja „Domyślne wartości argumentów” jest bezpłatna?
Tak — pełny tekst „Domyślne wartości argumentów” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Mojo Academy, przejdź na CoddyKit PRO. Kurs Mojo Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Domyślne wartości argumentów”?
Uczyń niektóre parametry opcjonalnymi. Ćwiczysz Mojo Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Mojo Academy?
Nie wymagamy żadnego doświadczenia. Mojo Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.
Ile czasu zajmuje lekcja „Domyślne wartości argumentów”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Mojo Academy?
Tak. Każda lekcja Mojo Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Argumenty pozycyjne i nazwane
- Domyślne wartości argumentów
- Zwracanie wielu wartości
- Odczytywanie sygnatur funkcji