Funkcje Pythona: ostateczny przewodnik i przykłady

Opanuj funkcje Pythona. Dowiedz się, jak pisać kod wielokrotnego użytku za pomocą def, definiować argumenty, zwracać wartości i rozumieć zakres lokalnie i globalnie.

Spróbuj w Edytorze

Przegląd

Funkcja to samodzielny blok zorganizowanego kodu wielokrotnego użytku, zaprojektowany do wykonywania pojedynczej, określonej akcji. W miarę jak skrypty Pythona przekraczają kilka wierszy, organizowanie kodu w funkcje staje się krytyczne. Funkcje eliminują złożoność, dzięki czemu przepływ głównego programu jest łatwiejszy do odczytania i utrzymania. Zamiast powtarzać tę samą logikę w wielu miejscach, piszesz funkcję raz i „wywołujesz ją” tam, gdzie jest to potrzebne.

Python udostępnia wiele wbudowanych funkcji, takich jak „print()”, „len()” i „type()”. Jednak prawdziwa siła programowania pochodzi z tworzenia własnych funkcji zdefiniowanych przez użytkownika. Hermetyzując logikę, tworzysz modułowe elementy składowe, które można testować oddzielnie i ponownie wykorzystywać w różnych projektach lub udostępniać zespołowi.

Aby zdefiniować funkcję w Pythonie, użyj słowa kluczowego `def`, po którym następuje opisowa nazwa funkcji, nawiasy `()` i dwukropek `:`. Każdy kod z wcięciem poniżej tej definicji należy do bloku funkcyjnego. Funkcja jest wykonywana tylko wtedy, gdy jest jawnie wywoływana poprzez swoją nazwę.

Funkcje mogą przyjmować dane poprzez parametry (zwane także argumentami). Są to zmienne wymienione w nawiasach definicji funkcji. Możesz wymagać argumentów pozycyjnych, które muszą być przekazywane w dokładnej kolejności, lub używać argumentów słów kluczowych z wartościami domyślnymi, co pozwala na elastyczne wywołania funkcji. Na przykład `defkalkuluj_podatek(cena, stawka=0,05):` pozwala wywołującemu pominąć argument `stawka`, ustawiając wartość domyślną na 5%.

Na koniec funkcje zazwyczaj wysyłają dane z powrotem do osoby wywołującej za pomocą instrukcji „return”. Po wykonaniu „return” funkcja natychmiast się kończy i przekazuje określoną wartość z powrotem. W Pythonie możesz nawet zwracać wiele wartości oddzielonych przecinkami, które Python automatycznie łączy w krotkę. Zrozumienie zakresu funkcji — zasady mówiącej, że do zmiennych utworzonych wewnątrz funkcji nie można uzyskać dostępu spoza niej — jest niezbędne do zapobiegania mutacjom stanu podatnym na błędy.

Dane wyjściowe kodu i wykonania

Oto prosta funkcja, która oblicza podatek zastosowany do ceny, demonstrując parametry i zwracane wartości.

functions_demo.py
Spróbuj w Edytorze
def calculate_total(price, tax_rate=0.08):
    """
    Calculates the final price after applying tax.
    """
    tax_amount = price * tax_rate
    total = price + tax_amount
    return total

print(calculate_total(100.00))
print(calculate_total(50.00, tax_rate=0.10))
Wyjście terminala
108.0
55.0

Wdrażanie krok po kroku

  • Hermetyzacja złożonych formuł matematycznych
  • Oddzielenie logiki interfejsu użytkownika od logiki biznesowej backendu
  • Tworzenie modułów narzędziowych do współpracy zespołowej

Często zadawane pytania

Co to są argumenty domyślne?

Argumenty domyślne to wartości używane, jeśli podczas wywołania funkcji nie podano żadnego argumentu.

Czy funkcja może zwracać wiele wartości?

Tak, Python pozwala funkcjom zwracać wiele wartości, oddzielając je przecinkami. Pod maską zwraca krotkę.

Powiązane tematy

Polecane zasoby Pythona

Poszerzaj swoją wiedzę dzięki powiązanym interaktywnym samouczkom, ściągawkom i porównaniom kodów.