match case

Wprowadzenie instrukcji match/case w Pythonie 3.10 stanowiło znaczący krok w kierunku zwiększenia czytelności i efektywności kodu przy obsłudze wielokrotnych warunków. Ta konstrukcja, znana z innych języków programowania jako switch/case, pozwala na eleganckie porównywanie wartości zmiennej z wieloma wzorcami. W Pythonie instrukcja match/case idzie nawet o krok dalej, oferując zaawansowane dopasowanie wzorców, które może uwzględniać typy danych, zawartość kolekcji oraz wiele innych kryteriów. W tym artykule przyjrzymy się różnym przypadkom użycia instrukcji match/case w Pythonie, demonstrując jej elastyczność i moc.

Przykłady użycia match/case

Poniżej przedstawiono przykłady kodu Pythona, ilustrujące różne sposoby wykorzystania instrukcji match/case.

# Przykład 1: Podstawowe użycie match/case
# Zmienna przechowująca typ dnia
dayType = "work"

# Proste dopasowanie wartości
match dayType:
    case "work":
        print("To jest dzień roboczy.")
    case "weekend":
        print("To jest weekend!")
    case _:
        print("Nieznany typ dnia.")

# Przykład 2: Dopasowanie z wzorcami
# Zmienna przechowująca wiek użytkownika
userAge = 25

# Dopasowanie z wykorzystaniem wzorców
match userAge:
    case age if age < 18:
        print("Niepełnoletni")
    case age if age >= 18:
        print("Pełnoletni")

# Przykład 3: Dopasowanie kolekcji
# Zmienna przechowująca koordynaty
coordinates = (5, 0)

# Dopasowanie elementów kolekcji
match coordinates:
    case (0, 0):
        print("Początek układu współrzędnych")
    case (x, 0):
        print(f"Na osi X, x = {x}")
    case (0, y):
        print(f"Na osi Y, y = {y}")
    case (x, y):
        print(f"Punkt ({x}, {y}) nie leży na żadnej z osi")

# Przykład 4: Dopasowanie z wykorzystaniem list
# Lista zawierająca kolory
colors = ["red", "green", "blue"]

# Dopasowanie z użyciem list
match colors:
    case ["red", "green", "blue"]:
        print("Podstawowe kolory")
    case ["black", "white"]:
        print("Skala szarości")
    case _:
        print("Inna kombinacja kolorów")

Podsumowanie

Instrukcja match/case w Pythonie oferuje programistom potężne narzędzie do obsługi wielu warunków w sposób bardziej zorganizowany i czytelny niż seria instrukcji if/elif/else. Dzięki możliwościom dopasowania wzorców, takim jak sprawdzanie typów, dopasowywanie zawartości kolekcji czy korzystanie z warunków, instrukcja ta otwiera nowe możliwości w projektowaniu logiki aplikacji. Warto wykorzystać match/case w swoich projektach Pythona, aby kod był nie tylko efektywny, ale też łatwiejszy do zrozumienia i utrzymania.

Jeżeli chcesz przyśpieszyć swoją naukę tworzenia stron chciałbym polecić mój kurs Python od podstaw w którym nauczysz się tego języka od podstaw do zaawansowanych jego aspektów.

Scroll to Top