Python Academy · Lekcja

Definiowanie i wywoływanie funkcji

Proszę tworzyć funkcje za pomocą def i wywoływać je z argumentami.

Lekcja 1 z 414 kroki

Definiowanie i wywoływanie funkcji to bezpłatna lekcja Python Academy na CoddyKit. To lekcja 1 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 Python Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Python Academy zawiera 4 lekcji w sumie.

Wprowadzenie

Funkcje to wielokrotnie używane bloki kodu definiowane za pomocą def. Unikają powtarzania kodu i ułatwiają testowanie oraz utrzymanie programów.

Słowo kluczowe def

def greet(name): definiuje funkcję. Jej ciało jest wcięte. Wywołaj ją za pomocą greet('Alice').
def greet(name):
    print('Hello', name)
greet('Alice')

Argumenty pozycyjne

Argumenty są przekazywane na podstawie pozycji. def add(a, b): return a + b — add(3,4) zwraca 7.
def add(a, b):
    return a + b
print(add(3, 4))

Instrukcja return

return przekazuje wartość z powrotem do miejsca wywołania. Funkcja bez return niejawnie zwraca None.
def square(x):
    return x * x
result = square(5)
print(result)

Wiele wartości zwracanych przez funkcję

def min_max(lst): return min(lst), max(lst) zwraca krotkę. Rozpakuj ją: 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)

Docstringi

Pierwszy ciąg znaków w ciele funkcji jest jej docstringiem: """One-line summary.""" Uzyskaj do niego dostęp za pomocą help() lub func.__doc__.
def greet(name):
    """Return a greeting string."""
    return f"Hello {name}"
print(greet.__doc__)

Zmienna liczba argumentów

def func(*args) zbiera dodatkowe argumenty pozycyjne do krotki. Jest to przydatne, gdy nie wiadomo, ile ich będzie.
def total(*nums):
    return sum(nums)
print(total(1,2,3,4))

Funkcje są obiektami

Funkcje są obiektami pierwszej klasy. Można przypisywać je do zmiennych, przekazywać jako argumenty lub przechowywać na listach.
def double(x): return x * 2
fn = double
print(fn(5))

Wywoływanie z rozpakowywaniem

args = [1,2]; f(*args) rozpakowuje listę na argumenty pozycyjne. d = {'a':1}; f(**d) rozpakowuje słownik na argumenty nazwane.
def add(a, b): return a + b
args = [3, 4]
print(add(*args))

Funkcje lambda

lambda x: x*2 to anonimowa funkcja zajmująca jedną linię. Używaj jej do krótkich funkcji zwrotnych; w przypadku bardziej złożonego kodu preferuj funkcje nazwane.
double = lambda x: x * 2
print(double(5))
print(list(map(lambda x: x**2, [1,2,3])))

Funkcje zagnieżdżone

Funkcje można definiować wewnątrz innych funkcji. Funkcja wewnętrzna ma dostęp do zmiennych lokalnych funkcji zewnętrznej (domknięcie).
def outer(x):
    def inner(y):
        return x + y
    return inner
add5 = outer(5)
print(add5(3))

Szybkie sprawdzenie

Co zwraca funkcja, jeśli nie zawiera jawnej instrukcji return?

Podsumowanie

Funkcje: def name(args): body. return przekazuje wartości z powrotem. Wiele wartości można zwracać za pomocą krotki. Funkcji lambda używaj do prostych operacji zajmujących jedną linię. Funkcje są obiektami pierwszej klasy.

Kontynuuj naukę

Świetna praca! Przejdź do następnej lekcji, aby dalej się rozwijać.
Bezpłatny start

Ucz się Python dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
76
Lekcje
320

Często zadawane pytania

Czy lekcja „Definiowanie i wywoływanie funkcji” jest bezpłatna?

Tak — pełny tekst „Definiowanie i wywoływanie funkcji” 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 Python Academy, przejdź na CoddyKit PRO. Kurs Python Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Definiowanie i wywoływanie funkcji”?

Proszę tworzyć funkcje za pomocą def i wywoływać je z argumentami. Ćwiczysz Python 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ąć Python Academy?

Nie wymagamy żadnego doświadczenia. Python 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 1 z 4.

Ile czasu zajmuje lekcja „Definiowanie i wywoływanie funkcji”?

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 Python Academy?

Tak. Każda lekcja Python 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

  1. Definiowanie i wywoływanie funkcji
  2. Argumenty domyślne i nazwane
  3. args i kwargs
  4. Wartości zwracane i zakres
← Powrót do Python Academy