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")
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 … 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")
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 ;)")
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
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!")
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")
Dzięki za przeczytanie całości. Cały kurs programowania w Python znajdziesz pod tym adresem: python kurs