Rozdział 13 · Automatyzacja z funkcjami

Dlaczego potrzebuję funkcji?

Parameter to nazwa w definicji. Argument to wartość przekazywana podczas wywołania. Różnica między nimi jest fundamentem wszystkiego, co następuje dalej.

Dlaczego potrzebuję funkcji?

Za każdym razem, gdy robimy coś nowego!

Funkcja bez wejścia zawsze robi to samo. Aby funkcja zachowywała się inaczej W zależności od sytuacji otrzymuje argumenty są wartościami w nawiasach w miejscu Rozmow:

argumenty.py
def privetstvie(imya):
    print(f"Cześć, {imya}!")

privetstvie(„Ada”)
privetstvie("Cartesian")

Parametr vs argument — dokładna różnica

Te dwa słowa łatwo pomylić, ale mają różne role:

Gdzie się pojawiaCo to jest
Parametrw definicji: def privetstvie(imya):lokalna nazwa wewnątrz funkcji
Argumentacjaw rozmowie: privetstvie("Ада")obiekt/wartość przekazana, gdy
„Ada”imya (parametr)
Argument z miejsca wywołania staje się wartością parametru wewnątrz funkcji

Parametry to nazwy lokalne

Kontynuujmy znany model „nazwij wskazuje na obiekt”

imya„Ada”
Inside the privetstvie( Ada" wywołanie), nazwa imya wskazuje na przekazany obiekt
"Transfer by meaning" i "by reference" są mylące
Nie traktuj Python jako języka, w którym "wszystko przekazywane jest przez odniesienie" lub "wszystko przekazywane jest przez znaczenie" — oba sformułowania są tu zbyt nieprecyzyjne i zbędne. Dokładniej, w ten sposób: przy wywołaniu funkcji jej parametry są powiązane z tymi samymi obiektami, co przekazane argumenty to ten sam model „nazw → obiekt” call by sharing, ale specjalnego terminu nie trzeba zapamiętywać — ważny jest sam model.

Bez kłótni?

Funkcja bez parametrów w nawiasie – na przykład, privetstvie() z §13.2 — też całkowicie normalne: nie każda funkcja potrzebuje danych wejściowych.

Praktyka: argument parametru vs
interaktywny laptop bezpośrednio w przeglądarce – Python 3.14 przez Pyodide, bez instalacji
Otwórz praktykę →