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
ArgumentacjaParametr
10width
5height

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
Otwórz praktykę →