Цикл while в python3

Цикл while в Python3 — синтаксис и примеры использования

Цикл while в Python3 похож на родительскую раздачу ценных указаний в стиле: «Пока ты не приберешь свои вещи, мы не пойдем гулять». Или так: «While беспорядок == True(истина), сидим дома». Однако родителю из мира Python стоит отдать должное — он просто бог итерации! Не теряя надежды, родитель то и дело заглядывает в детскую комнату и проверяет, не стал ли беспорядок False(ложь). Как только выполнится поставленное родителем условие, то есть беспорядок станет False, цикл проверок остановится и родитель сконцентрируется на дальнейших планах.

Ниже, в блоке текущей статьи «Примеры кода с использованием цикла while» мы законспектируем рассмотренную ситуацию по всем правилам языка Python (см. пример2). А сейчас предлагаю провести небольшой ликбез по синтаксису цикла while:

Краткий ликбез по синтаксису цикла while

В простейшем случае синтаксис цикла while выглядит так:

while [условие True]:
    [выполняем действия]

Действия будут выполняться до тех пор, пока сохраняется истинность условия. Как только условие станет ложным, цикл завершится без выполнения действий, и программа перейдет к исполнению кода, следующего за циклом. Таким образом, в отличие от цикла for, при использовании цикла while нет необходимости знать заранее число итераций.

Примеры кода с использованием цикла while

Пример 1: Вы — персонаж интересной компьютерной игры. Ваш жизненный потенциал измеряется кармой. Пока карма > 0 вы печатаете на экране строку «Я живчик!» и карма уменьшается на единицу. Как только карма упадет ниже нуля — вы проиграете и тогда на экране выведется строка «Игра окончена.». Напишем цикл while, контролирующий ваше участие в игре и зададим начальное значению параметру karma = 5:

karma = 5
while karma>0:
    print("Я живчик!")
    karma = karma-1
print("Игра окончена.")

Пример 2: Закодируем семейную ситуацию, описанную в начале статьи. Необходимо создать цикл с условием: пока бардак дома — это истина, выводим строку «Сидим дома» и вызываем функцию cleening_home(). Функция cleening_home() содержит список результатов приборки на текущий момент. Из этого списка случайным образом образом выбирается один элемент. Если элемент равен «Чисто! Ура!», то функция возвращает False, в остальных случаях функция возвращает True.

trash = True
import random
#cleaning_room() имитирует процесс приборки и возвращает ее результат
#на момент проверки. Только результат зависит не от ребенка, 
#его по-быстрому не накодишь, а от настроения функции choice 
#из модуля random
def Cleaning_room():
    cleening_stages = ["Очень грязно", "Просто грязно" "Чуть-чуть чище", "Уже намного чище", "Осталось чуть-чуть", "Почти чисто", "Чисто! Ура!"];
    now_stage = random.choice(cleening_stages)
    if(now_stage == "Чисто! Ура!"):
        return True
    else: 
        return False
while trash == True:  # пока треш == Истина
    print("Сидим дома!") # выводим сообщение о пребывании дома
    trash = Cleaning_room(); # делаем попытку прибрать в комнате с помощью функции cleaning_room(), 
#которая возвращает результат проверки в виде True(если грязь жива) 
#или False(если с беспорядком покончено). Помещаем результат проверки в переменную trash.
print("Ура! Идем гулять!")

Пример 3: Запрашиваем у пользователя пароль до тех пор, пока введенный им ответ не совпадает со строкой «На горшке сидит король!». Как только строки совпадут, выводим фразу «Королю хорошо!»

password = input("Введите пароль: ")
while password != "На горшке сидит король!":
    password = input("Введите пароль: ")

У нас появился Telegram-канал для изучающих Python! Подписывайтесь по ссылке: «Кодим на Python! Вместе «питонить» веселее! 😉

Добавить комментарий