Урок за Python While Loop - Примерно изявление „Направи докато е вярно“

Циклите са последователност от инструкции, изпълнявани, докато условието не бъде изпълнено. Нека да разгледаме как докато циклите работят в Python.

Какво представляват цикли?

Ако се учиш да кодираш, циклите са една от основните концепции, които трябва да разбереш. Циклите ви помагат да изпълните последователност от инструкции, докато условието бъде изпълнено.

Има два основни типа цикли в Python.

  • За цикли
  • Докато цикли

И двата вида цикли могат да се използват за подобни действия. Но докато се научите да пишете ефективни програми, ще знаете кога какво да използвате.

В тази статия ще разгледаме циклите while в Python. За да научите повече за циклите, вижте тази статия, публикувана наскоро на freeCodeCamp.

Докато Loops

Концепцията зад цикъл while е проста: Докато условието е вярно -> Изпълнете командите ми.

Цикълът while ще проверява състоянието всеки път и ако върне „true“, той ще изпълни инструкциите в цикъла.

Преди да започнем да пишем код, нека разгледаме блок-схемата, за да видим как работи.

Сега нека напишем малко код. Ето как пишете прост цикъл while, за да отпечатате числа от 1 до 10.

#!/usr/bin/python x = 1 while(x <= 10): print(x) x = x+1

Ако погледнете горния код, цикълът ще се изпълни само ако x е по-малко или равно на 10. Ако инициализирате x като 20, цикълът никога няма да се изпълни.

Ето изхода на този цикъл while:

> python script.py 1 2 3 4 5 6 7 8 9 10

Do-While Loop

Има две вариации на цикъла while - while и do-While. Разликата между двете е, че „do-while“ работи поне веднъж.

Цикълът while може дори да не се изпълни веднъж, ако условието не е изпълнено. Do-while обаче ще се изпълни веднъж, след което проверете състоянието за следващи цикли.

Въпреки че присъства в повечето от популярните езици за програмиране, Python няма вграден оператор за изпълнение. Но можете лесно да емулирате цикъл за изпълнение, като използвате други подходи, като функции.

Нека изпробваме подхода do-while, като приключим командите във функция.

#!/usr/bin/python x = 20 def run_commands(): x = x+1 print(x) run_commands() while(x <= 10): run_commands()

Горният код изпълнява функцията "run_commands ()" веднъж, преди да извика цикъла while. След като цикълът while стартира, функцията "run_commands" никога няма да бъде изпълнена, тъй като x е равно на 20.

Докато - Иначе

Можете да добавите оператор "else", който да се изпълни, ако условието на цикъла не успее.

Нека добавим още условие към нашия код, за да отпечатаме „Готово“, след като отпечатаме числата от 1 до 10.

#!/usr/bin/python x = 1 while(x <= 10): print(x) x = x+1 else: print("Done")

Горният код първо ще отпечата числата от 1 до 10. Когато x е 11, условието while ще се провали, задействайки условието else.

Изказване по едноредов

Ако имате само един ред код във вашия цикъл while, можете да използвате синтаксиса на един ред.

#!/usr/bin/python x = 1 while (x): print(x)

Безкрайни цикли

Ако не сте внимателни, докато пишете цикли, ще създадете безкрайни цикли. Безкрайните цикли са тези, при които условието винаги е вярно.

#!/usr/bin/python x = 1 while (x >= 1): print(x)

Горният код е пример за безкраен цикъл. Няма команда за промяна на стойността на x, така че условието "x е по-голямо или равно на 1" винаги е вярно. Това ще направи цикъла да работи завинаги.

Винаги бъдете внимателни, докато пишете цикли. Малка грешка може да доведе до безкраен цикъл и да срине приложението ви.

Контрол на контура

И накрая, нека разгледаме как да контролираме потока на цикъл, докато той работи.  

Когато пишете приложения от реалния свят, често срещате сценарии, при които трябва да добавите допълнителни условия, за да пропуснете цикъл или да излезете от цикъл.

Прекъсване

Нека да разгледаме как да излезем от цикъла, докато условието е вярно.

#!/usr/bin/python x = 1 while (x <= 10): if(x == 5): break print(x) x += 1

В горния код цикълът ще спре изпълнението, когато x е 5, въпреки че x е по-голямо или равно на 1.

продължи

Ето още един сценарий: кажете, че искате да пропуснете цикъла, ако е изпълнено определено условие. Искате обаче да продължите последващите изпълнения, докато основното, докато условието стане фалшиво.

Можете да използвате ключовата дума „продължаване“ за това, по следния начин:

#!/usr/bin/python x = 1 while (x <= 10): if(x == 5): x += 1 continue print(x)

В горния пример цикълът ще отпечата от 1 до 10, с изключение на 5. Когато x е 5, останалите команди се пропускат и контролният поток се връща в началото на програмата while.

Обобщение

Циклите са един от най-полезните компоненти в програмирането, които ще използвате ежедневно.

За и докато са двата основни цикъла в Python. Цикълът while има два варианта, while и do-while, но Python поддържа само първия.

Можете да контролирате програмния поток, като използвате командите 'break' и 'continue'. Винаги имайте предвид, че случайно създавате безкрайни цикли.

Редовно пиша по теми, включително изкуствен интелект и киберсигурност. Ако тази статия ви е харесала, можете да прочетете моя блог тук.