Instrukcja warunkowa if w Python

Jak używać instrukcji warunkowej if w Python?

Instrukcja warunkowa, a więc if … else w Python to jedna z ważniejszych rzeczy, które powinieneś opanować używając tego języka programowania. Stosując if w Python pamiętaj o kilku najważniejszych zasadach:

  • W linii dotyczącej warunku (tej z if) używaj znaku dwukropka „:” na zakończenie
  • sam if w Python pisz zawsze z małej litery
  • w kolejnych blokach po instrukcji if używaj wcięcia o długości czterech spacji (chyba, że konsekwentnie używasz innej liczby wcięć)
  • Jeśli używasz operatora równoważności w instrukcji if to stosuj dwa znaki równości „==”

Operatory, z których możesz skorzystać, to przede wszystkim operatory logiczne i operatory porównania. Żebyś jednak nie musiał klikać, poniżej opis najważniejszych operatorów porównania:

  • Równe: x == y
  • Nie równe: x != y
  • Mniejsze niż: x < y
  • Mniejsze lub równe od: x <= y
  • Większe niż: x > y
  • Większe lub równe od: x >= y

W najprostszej konstrukcji if w python zakładamy, że nie ma warunków alternatywnych. Jeśli warunek nie jest spełniony, instrukcja jest pomijana. Poniżej przykład:

x = 123
y = 8

if x >= y:
    print("x is greater that x or equal y")
Python if. Instrukcja warunkowa w Python

Jeśli chcesz, by instrukcja warunkowa nie wykonywała żadnych instrukcji użyj frazy pass. Używaj tej frazy podczas developmentu, np w przypadku, gdy chcesz rozbudować instrukcję w późniejszym czasie

x = 123
y = 8

if x >= y:
pass

Python if … else – obsługa przypadku, gdy warunek nie został spełniony

Rozwinięciem instrukcji warunkowej w Python jest if … else. Stosuj ją, gdy chcesz obsłużyć przypadki, gdy warunek ujęty w if nie jest spełniony i chcesz obsłużyć rozwiązanie alternatywne dla wszystkich przypadków, które nie spełnią warunku.

x = 54
y = 87

if x >= y:
print("x is greater that x or equal y")
else:
print("x is not greater that x and not equal y")
Python if … else – obsługa przypadku, gdy warunek nie został spełniony

Python if … elif … else – obsługa różnych przypadków, gdy warunek nie został spełniony

Instrukcję warunkową if .. elif stosuj w przypadkach, gdy chcesz obsłużyć różne alternatywy warunku. Jeśli warunki będą się na siebie nakładać, priorytetowy jest ten, który ująłeś jako pierwszy. Konstrukcje if, elif i else możesz stosować jednocześnie. Poniżej przykład, w którym wartość do porównania wprowadzana jest z poziomy inputu użytkownika.

W poniższym kodzie: Wprowadzenie wartości przez użytkownika umożliwia funkcja input. Funkcja int służy do zamiany wprowadzonej wartości na liczbę całkowitą.

x = int(input("Type a number between 0 and 100: "))

if x == 100:
    print("x is 100")
elif x == 0:
    print("x is 0")
elif x < 0:
    print("x is lower than 0")
else:
    print("x is probably greater than 100")
Python if … elif … else – obsługa różnych przypadków, gdy warunek nie został spełniony

Zagnieżdżona instrukcja warunkowa – if w if

Jeśli chcesz zagnieździć instrukcję warunkową w innej instrukcji warunkowej, to jedyne co musisz zrobić, to odpowiednią liczbę wcięć w kodzie. Instrukcja zagnieżdżona także może zawierać osobną instrukcję elif i else. Przykład poniżej. Nie będę ukrywał, że można uzyskać ten sam wynik używając jedynie jednej instrukcji if. Jest to jednak przykład pokazowy. W rzeczywistym skomplikowanym kodzie taka konstrukcja jak najbardziej jest przydatna.

x = int(input("Type Your age: "))

if x >= 18:
    if x == 18:
        print("You are 18")
    elif x >= 18:
        print("You are older than 18")
else:
    print("Please leave our webpage ;)")
Zagnieżdżona instrukcja warunkowa – if w if

Operatory logiczne and / or / not w instrukcji if Python

Do tej pory stosowałeś tylko pojedynczy warunek w if. Rozbudujmy nasze warunki o użycie operatorów logicznych. Operatory najczęściej używane to:

  • and – koniunkcja
  • or – alternatywa
  • not – negacja

W poniższym przykładzie użyte nawiasy mają na celu zwiększenie czytelności kodu. Nie są one konieczne.

x = int(input("Type Your age: "))

if (x >= 18) and (x < 110):
    print("Your age is between 18 and 100")
elif (x < 18) and not(x < 0):
    print("You are under 18")
elif x >= 110:
    print("Type your real age")
else:
    pass
Operatory logiczne and / or / not w instrukcji if Python

Skrócona instrukcja warunkowa w Python – if w jednej linii

W Python możesz także zapisać instrukcję warunkową w jednej linii bez używania wcięć. Są na to 2 sposoby

Pierwszy sposób:

x = input("What is Your country? ")

if x == "England": print("Hello!")
Skrócona instrukcja warunkowa w Python – if w jednej linii

Drugi sposób z którego możesz skorzystać z użyciem else:

x = input("What is Your country? ")

print("Hello!") if x == "England" else print("You are not from England")
Skrócona instrukcja warunkowa w Python – if w jednej linii z else

Dzięki za przeczytanie całości. Cały kurs programowania w Python znajdziesz pod tym adresem: python kurs

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *