Czym jest operator morsa tzw walrus w Pythonie?

Operator morsa, wprowadzony w Pythonie 3.8, zyskał swoją nazwę ze względu na swój unikalny wygląd :=. Często nazywany operatorem przypisania wyrażeń, pozwala on na przypisanie wartości do zmiennej jako część wyrażenia, co jest szczególnie przydatne w sytuacjach, gdy chcesz użyć wartości zmiennej w tym samym czasie, kiedy jest ona przypisywana. Ta funkcja może uczynić kod bardziej zwięzłym i zwiększyć jego czytelność, ale należy używać jej ostrożnie, aby nie utrudnić zrozumienia kodu.

Przykład zastosowania operatora morsa

Poniżej przedstawiam kompleksowy przykład użycia operatora morsa w Pythonie, który demonstruje jego praktyczne zastosowanie i potencjalne korzyści dla czytelności kodu.

# Przykład: Sprawdzanie długości listy i jednoczesne
# przypisywanie jej do zmiennej przy pomocy operatora morsa

# Definiowanie listy liczb
numbers = [1, 2, 3, 4, 5]

# Użycie operatora morsa do przypisania długości listy
# do zmiennej len_list i jednoczesnego sprawdzenia,
# czy lista zawiera więcej niż 3 elementy
if (len_list := len(numbers)) > 3:
    print(f"Lista zawiera {len_list} elementy, co jest "
          "więcej niż 3.")
else:
    print(f"Lista zawiera {len_list} lub mniej elementów.")

# Wykorzystanie operatora morsa w pętli while
# do czytania zawartości pliku do momentu napotkania końca
with open("example.txt", "r") as file:
    while (line := file.readline().rstrip()):
        #

W powyższym kodzie pierwszy przykład demonstruje, jak można użyć operatora morsa do sprawdzenia długości listy i jednoczesnego przypisania tej długości do zmiennej. Umożliwia to wykonanie obu akcji w jednym wierszu kodu, co czyni kod bardziej zwięzłym.

Drugi przykład pokazuje zastosowanie operatora morsa w kontekście pętli while, pozwalając na czytanie z pliku linia po linii do momentu, aż nie zostaną napotkane żadne więcej linie. To użycie demonstruje, jak operator morsa może ułatwić operacje na plikach, minimalizując ilość kodu potrzebnego do czytania zawartości pliku.

Podsumowanie

Operator morsa := w Pythonie jest potężnym narzędziem, które, użyte odpowiednio, może znacząco poprawić czytelność kodu, redukując jednocześnie jego objętość. Umożliwia on przypisanie wartości do zmiennej wewnątrz wyrażenia, co może być przydatne w wielu różnych scenariuszach programistycznych. Jednak ważne jest, aby używać tego operatora z umiarem i w miejscach, gdzie naprawdę przynosi wartość dodaną, aby nie uczynić kodu trudniejszym do zrozumienia dla innych programistów.

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