Урок 9. Конструкція if

В Python if — це ключове слово, яке використовується для створення умовних конструкцій. В основному, if дозволяє виконувати певний блок коду тільки тоді, коли задана умова є істинною.

Приклад з відео:

#Python оператори порівняння і логічні умови
#наприклад, ==, !=, >, <,<=,>=
#часто використовуються з конструкцією if
varNum1 = 75
varNum2 = 85
#Використовуємо if для визначення
#чи є змінна varNum1 меншою ніж змінна varNum2
if varNum1<varNum2:
    print("varNum1 is less than varNum2")

Elif

elif в Python є скороченням від “else if” і використовується для перевірки додаткових умов після початкової умови, заданої в if. Це дозволяє обробляти кілька можливих варіантів у рамках одного блоку умовних операторів.

Ось як це працює в контексті умовних конструкцій:

  • if перевіряє першу умову. Якщо вона є істинною (True), виконується відповідний блок коду.
  • Якщо умова в if не є істинною, Python перевіряє умову в elif, якщо вона є.
  • Можна мати кілька elif блоків, кожен з яких перевіряє свою умову.
  • Якщо жодна з умов в if або elif не є істинною, виконується блок else, якщо він присутній.

Приклад з відео:

#elif надає можливість додати умову для перевірки
varNum1 = 85
varNum2 = 85
if varNum1<varNum2:
    print("varNum1 is less than varNum2")
#Використовуємо elif для перевірки
#чи дорівнює значення змінної varNum1 зміній varNum2
elif varNum1==varNum2:
    print("varNum1 equals varNum2")

Else

else в Python використовується як частина умовних конструкцій, зокрема після if і elif. Воно задає блок коду, який буде виконано, коли всі попередні умови не були істинними.

Приклад з відео:

#else спрацьовує якщо всі інші умови перевірки не спрацювали
varNum1=105
varNum2=95
if varNum1<varNum2:
    print("varNum1 is less than varNum2")
    
elif varNum1==varNum2:
    print("varNum1 equals varNum2")
#Використовуємо else для виявлення ситуацій, коли
#змінна varNum1 більша за varNum2
#else спрацює тільки, якщо попередні перевірки не виконаються
else:
    print("varNum1 is greater than varNum2")

Скорочений синтаксис if

Існує так званий скорочений синтаксис написання if, який може бути задіяний, якщо всередині блоку лише один рядок коду для виконання.

Приклад з відео:

#якщо у вас є тільки один рядок коду для виконання, 
#то ви можете записати все одним рядком
varNum1=85
varNum2=95
print("shorthand versions")
if varNum1<varNum2: print("varNum1 is less than varNum2")
#те саме стосовно if else, але першим йде рядок виконання
x=95
y=85
print("y greater") if y>x else print("y is not greater")
#це також працює для множинних умов
print("y") if y>x else print("equals") if y==x else print("x")

#повна версія
print("full version")
if y>x:
    print("y")
    
else:
    if y==x:
        print("equals")
    else:
        print("x")

And в if

Логічний оператор and часто використовується при формуванні умов у блоках if.

Приклад з відео:

#and є логічним оператором, що використовується
#для комбінування умов
#і видає true якщо всі умови є true
purchaseAmount1 = 5001
brandName = "New Balance"
if purchaseAmount1>5000 and brandName == "Nike":
    print("Your discount is 25%")
    
elif purchaseAmount1>5000:
    print("Your discount is 10%")
    
else:
    print("Your discount is 5%")

Or в if

Логічний оператор or також часто використовується при формуванні умов у блоках if.

Приклад з відео:

#or такоє є логічним оператором, що використовується
#для комбінування умов
#і видає false якщо всі умови є false
purchaseAmount1 = 4501
brandName = "New Balance"
if purchaseAmount1>5000 or brandName == "Nike":
    print("Your discount is 25%")
    
elif purchaseAmount1>4500:
    print("Your discount is 10%")
    
else:
    print("Your discount is 5%")

Not в if

Ключове слово not надає можливість отримати протилежний результат певної умови, що може бути корисним в певних випадках і допомогти в реалізації блоку if.

Приклад з відео:

#not є логічним оператором, що 
# що інвертує результат умови
varNum1 = 5
varNum2 = 10
print(not varNum1>varNum2)
if not varNum1>varNum2:
    print("varNum1 is not greater than varNum2")

Вкладені if

Блоки if можуть знаходитися всередині інших блоків if.

Приклад з відео:

#Можна мати блоки if всередині інших блоків if, 
#це є вкладені if
varNum1 = 7
if varNum1>5:
    pass

if varNum1>10:
    print("varNum1 is greater than 10")
    if varNum1>20:
        print("varNum1 is greater than 20")
        if varNum1>30:
            print("varNum1 is greater than 30")
        else:
            print("varNum1 is less than or equal to 30")
            
else:
    print("varNum1 is less or equal to ten")

Switch case

В Python 3.10 і пізніших версіях додано нову конструкцію match, яка є аналогом switch case.

Приклад з відео:

#Починаючи з версії 3.10 і вище, Python впровадив 
#switch case

dayOfTheWeek = 5
match dayOfTheWeek:
    case 1:
        print("Monday")
    case 2:
        print("Tuesday")
    case 3:
        print("Wednesday")
    case 4:
        print("Thursday")
    case 5:
        print("Friday")
    case 6:
        print("Saturday")
    case 7:
        print("Sunday")
Урок 9. Конструкція if

В цьому відео поговоримо про:
01:14 If statement
04:15 Elif keyword
07:21 Else keyword
13:17 Short hand syntax
27:31 And
33:52 Or
42:06 Not
45:50 Nested if
52:28 Switch case