Python Умовні оператори: IF…Else, ELIF & Switch Case
Що таке умовні оператори Python?
Умовне твердження в Python виконувати різні обчислення або дії залежно від того, чи конкретне логічне обмеження оцінюється як істинне чи хибне. Умовні оператори обробляються операторами IF у Python.
Що таке Python Заява If?
Python if Заява використовується для операцій прийняття рішень. Він містить частину коду, який виконується лише тоді, коли умова, указана в операторі if, є істинною. Якщо умова хибна, виконується необов’язковий оператор else, який містить деякий код для умови else.
Якщо ви хочете виправдати одну умову, тоді як інша умова не відповідає дійсності, ви використовуєте Python оператор if else.
Python Синтаксис оператора if:
if expression Statement else Statement
Python if…else Блок-схема
Давайте подивимося на прикладі Python оператор if else:
# #Example file for working with conditional statement # def main(): x,y =2,8 if(x < y): st= "x is less than y" print(st) if __name__ == "__main__": main()
- Рядок коду 5: ми визначаємо дві змінні x, y = 2, 8
- Кодовий рядок 7: Оператор if в Python перевіряє умову x Правда в цьому випадку
- Рядок коду 8: змінна st має значення «x менше за y».
- Кодовий рядок 9: Рядок print st виведе значення змінної st, яке є «x менше, ніж y»,
Що станеться, якщо «умова якщо» не виконується
На цьому кроці ми побачимо, що станеться, коли встановлюється умова if Python не зустрічається.
- Рядок коду 5: ми визначаємо дві змінні x, y = 8, 4
- Кодовий рядок 7: Оператор if в Python перевіряє умову x Помилковий в цьому випадку
- Кодовий рядок 8: змінна st is $NOT встановіть «x менше за y».
- Кодовий рядок 9: рядок print st – намагається надрукувати значення змінної, яка ніколи не була оголошена. Отже, ми отримуємо помилку.
Як використовувати «іншу умову»
«Інша умова» зазвичай використовується, коли вам потрібно оцінити одне твердження на основі іншого. Якщо одна умова йде не так, то має бути інша умова, яка має виправдовувати твердження чи логіку.
Приклад:
# #Example file for working with conditional statement # def main(): x,y =8,4 if(x < y): st= "x is less than y" else: st= "x is greater than y" print (st) if __name__ == "__main__": main()
- Рядок коду 5: ми визначаємо дві змінні x, y = 8, 4
- Кодовий рядок 7: Оператор if в Python перевіряє умову x Помилковий в цьому випадку
- Кодовий рядок 9: Потік керування програмою переходить до умови else
- Рядок коду 10: змінна st встановлена на «x is великий ніж у.»
- Рядок коду 11: рядок print st виведе значення змінної st, яке є «x більше за y»,
Коли «інша умова» не працює
Може бути багато випадків, коли ваша «інша умова» не дасть бажаного результату. Він виведе неправильний результат, оскільки є помилка в логіці програми. У більшості випадків це трапляється, коли вам потрібно обґрунтувати більше двох тверджень або умов у програмі.
An приклад допоможе вам краще зрозуміти цю концепцію.
Тут обидві змінні однакові (8,8) і вихід програми «x більше за y», який НЕПРАВИЛЬНО. Це тому, що він перевіряє першу умову (якщо умова в Python), а якщо це не вдається, то друкує другу умову (іншу умову) за замовчуванням. На наступному кроці ми побачимо, як можна виправити цю помилку.
# #Example file for working with conditional statement # def main(): x,y =8,8 if(x < y): st= "x is less than y" else: st= "x is greater than y" print(st) if __name__ == "__main__": main()
Як використовувати умову «elif».
Щоб виправити попередню помилку, допущену умовою else, ми можемо використати «еліф» заява. З допомогою "Еліф” умова, ви повідомляєте програмі роздрукувати третю умову або можливість, коли інша умова йде не так або неправильно.
Приклад
# #Example file for working with conditional statement # def main(): x,y =8,8 if(x < y): st= "x is less than y" elif (x == y): st= "x is same as y" else: st="x is greater than y" print(st) if __name__ == "__main__": main()
- Рядок коду 5: ми визначаємо дві змінні x, y = 8, 8
- Кодовий рядок 7: Оператор if перевіряє умову x Помилковий в цьому випадку
- Кодовий рядок 10: Потік керування програмою переходить до умови elseif. Він перевіряє, чи x==y, що є істинним
- Рядок коду 11: змінна st встановлена на «x is так само, як у.”
- Кодовий рядок 15: The потік керування програмою виходить із оператора if (він не потрапить до оператора else). І вивести змінну st. Вихід: «x такий самий, як y», що є правильним
Як виконати умовний оператор з мінімальним кодом
На цьому кроці ми побачимо, як ми можемо стиснути умовний оператор. Замість того, щоб виконувати код для кожної умови окремо, ми можемо використовувати їх з одним кодом.
синтаксис
A If B else C
Приклад:
def main(): x,y = 10,8 st = "x is less than y" if (x < y) else "x is greater than or equal to y" print(st) if __name__ == "__main__": main()
- Рядок коду 2: ми визначаємо дві змінні x, y = 10, 8
- Кодовий рядок 3: змінна st встановлюється на «x менше за y», якщо x y змінна st має значення «x більше або дорівнює y».
- Кодовий рядок 4: друкує значення st і дає правильний результат
-
Замість написання довгого коду для умовних операторів, Python дає вам свободу писати код у короткий та стислий спосіб.
Python Вкладений оператор if
Наступний приклад демонструє вкладений оператор if Python
total = 100 #country = "US" country = "AU" if country == "US": if total <= 50: print("Shipping Cost is $50") elif total <= 100: print("Shipping Cost is $25") elif total <= 150: print("Shipping Costs $5") else: print("FREE") if country == "AU": if total <= 50: print("Shipping Cost is $100") else: print("FREE")
Розкоментуйте рядок 2 у коді вище, прокоментуйте рядок 3 і запустіть код знову
Переключити Case Statement на Python
Що таке оператор Switch?
Інструкція switch — це багатостороння інструкція розгалуження, яка порівнює значення змінної зі значеннями, вказаними в операторах case.
Python мова не має оператора switch.
Python використовує словник відображення для реалізації Switch Case в Python
Приклад
function(argument){ switch(argument) { case 0: return "This is Case Zero"; case 1: return " This is Case One"; case 2: return " This is Case Two "; default: return "nothing"; }; };
Для наведеного вище випадку Switch в Python
def SwitchExample(argument): switcher = { 0: " This is Case Zero ", 1: " This is Case One ", 2: " This is Case Two ", } return switcher.get(argument, "nothing") if __name__ == "__main__": argument = 1 print (SwitchExample(argument))
Python 2 Приклад
Наведені вище коди є Python 3 приклади, якщо ви хочете ознайомитися Python 2, будь ласка, розгляньте наступний код.
# If Statement #Example file for working with conditional statement # def main(): x,y =2,8 if(x < y): st= "x is less than y" print st if __name__ == "__main__": main() # How to use "else condition" #Example file for working with conditional statement # def main(): x,y =8,4 if(x < y): st= "x is less than y" else: st= "x is greater than y" print st if __name__ == "__main__": main() # When "else condition" does not work #Example file for working with conditional statement # def main(): x,y =8,8 if(x < y): st= "x is less than y" else: st= "x is greater than y" print st if __name__ == "__main__": main() # How to use "elif" condition #Example file for working with conditional statement # def main(): x,y =8,8 if(x < y): st= "x is less than y" elif (x == y): st= "x is same as y" else: st="x is greater than y" print st if __name__ == "__main__": main() # How to execute conditional statement with minimal code def main(): x,y = 10,8 st = "x is less than y" if (x < y) else "x is greater than or equal to y" print st if __name__ == "__main__": main() # Nested IF Statement total = 100 #country = "US" country = "AU" if country == "US": if total <= 50: print "Shipping Cost is $50" elif total <= 100: print "Shipping Cost is $25" elif total <= 150: print "Shipping Costs $5" else: print "FREE" if country == "AU": if total <= 50: print "Shipping Cost is $100" else: print "FREE" #Switch Statement def SwitchExample(argument): switcher = { 0: " This is Case Zero ", 1: " This is Case One ", 2: " This is Case Two ", } return switcher.get(argument, "nothing") if __name__ == "__main__": argument = 1 print SwitchExample(argument)
Підсумки
Умовне твердження в Python обробляється операторами if, і ми побачили різні способи використання умовних операторів, наприклад Python якби ще тут.
- «Якщо умова» – використовується, коли вам потрібно роздрукувати результат, коли одна з умов є істинною або хибною.
- «Інша умова» - використовується, коли ви хочете роздрукувати оператор, коли ваша одна умова не відповідає вимозі
- «Умова elif» – використовується, коли у вас є третя можливість як результат. Ви можете використовувати кілька умов elif, щоб перевірити 4th,5th,6th можливості у вашому коді
- Ми можемо використовувати мінімальний код для виконання умовних операторів, оголосивши всі умови в одному операторі для запуску коду
- Python Оператор If може бути вкладеним