Rozdział 13 · Automatyzacja z funkcjami
Argumenty pozycyjne i nazwane
Dwa sposoby, by powiedzieć funkcji, który argument należy do którego parametru — każdy ma swoje zalety.
Kilka parametrów
neskolko_parametrov.py
def rectangle_area(width, height):
return width * height
print(rectangle_area(10, 5)) # 50
| Argumentacja | Parametr |
|---|---|
| 10 | width |
| 5 | height |
Argumenty pozycyjne
Domyślnie Python dopasowuje argumenty do parametrów kolejność — pierwszy argument należy do pierwszego parametru i tak dalej:
pozicionnye.py
create_user("Anna", 25)
# position 1 → name = "Anna"
# position 2 → age = 25
Pomieszanie porządku nie zawsze jest błędem Python, lecz zawsze błędem logicznym
create_user(25, "Anna") może nie wywołać żadnego błędu typów — Python nie zabrania przekazania liczby tam, gdzie zwykle przekazuje się łańcuch znaków. Ale wynik będzie logicznie nieprawidłowy: name otrzyma 25, a age — "Anna". Argumenty pozycyjne są wygodne, ale wymagają zapamiętania dokładnej kolejności.Nazwane argumenty
Argument można przekazać za pomocą nazwy parametru, więc kolejność nie jest już istotna:
imennye.py
create_user(
name="Anna",
age=25,
)
Dlaczego nazwane argumenty
Czytelność
możesz zobaczyć, co jest jak, prosto w rozmowie
Porządek nie jest ważny
age=25, name=„Anna”
Wygoda API
szczególnie przy wielu parametrach
Mieszanie pozycjonalne i nazwane
smeshannye.py
def function(width, height, color):
...
function(10, height=20, color="red") # możesz
Reguła porządku
Argumenty pozycyjne zawsze pojawiają się PRZED nazwanymi argumentami w rozmowie —
function(width=10, 20, "red") spowoduje SyntaxError. I nie można uzyskać tego samego parametru dwa razy — function(10, 20, width=5) spowoduje TypeError, ponieważ width już otrzymał wartość pozycyjnie.Praktyka: argumenty pozycyjne i nazwane
interaktywny laptop bezpośrednio w przeglądarce – Python 3.14 przez Pyodide, bez instalacji