Урок 7. Циклы for и while


Продолжаем изучение Python. Напомню в предыдущем уроке мы с Вами познакомились с такой штукой как If. Это одна из базовых вещей в любом языке программирования. Ну и ещё одна базовая штука, которую мы рассмотрим в данном уроке - это циклы ,в частности, это циклы while и цикл for. Есть ли вы опять таки знакомы уже с каким-то языком программирования, то там скорее всего есть и while и for. Итак давайте мы начнём с циклом while Это один из самых универсальных циклов в Python, поэтому он используется достаточно часто. Ну и следует отметить, что он в отличии от цикла For немножко медленнее выполняется. Ну и что он делает? Он выполняет некое тело цикла до тех пор, пока условие цикла истина. Его синтаксис записывается следующим образом:

while условие:
    тело цикла

При работе с циклами всегда есть вероятность того, что ваш цикл может стать бесконечным. Это случается тогда, когда вы попали в тело цикла и при этом условие всегда выполняется.Если условие не выполниться, то однозначно вы не попадёте в тело цикла.

Пример бесконечного цикла

while True:
    print("Бесконечный цикл")

Нужно всегда предусмотреть выход из цикла.

Печатаем все цифры от 1 до 10

i = 1
while i < 10:
    print(i, end=" ") # end - печатаем все цифры в одной строке
    i += 1 # увеличиваем переменную i на 1, чтобы печаталась следующая цифра. Если мы пропустим эту операцию, у нас опять же будет бесконечный цикл.


Следующий цикл который мы рассмотрим - это цикл for. Он уже менее универсален, но выполняется быстрее цикла while. Данный цикл предназначен для итерирования итерируемых объектов. Итерируемые объекты - это те объекты, которые можно перечислить. Мы с вами уже знакома с строками, это не что иное как итерируемая последовательность. То есть, мы можем побуквенно пройтись по ним. И вот для этого как раз и подойдёт замечательный цикл for. То есть он может, соответственно, пройтись посимвольно по нашей строке. Разберём на примере.

Цикл For

s = "Hello world"
for i in s:
    print(i, end= " ")

# Вывод: H e l l o   w o r l d

Чтобы пропустить какой-нибудь символ, нам нужно воспользоваться конструкцией if и оператором continue(продолжить с английского).

Цикл For с оператором continue

s = "Hello world"
for i in s:
    if i == " ":	# в данном случае мы пропускаем пробел, т.е он не выводится
        continue
    print(i, end= " ")

Рассмотрим оператор break(ломать с английского, в данном случае в цикле означает завершить цикл, т.е безусловно выйти из цикла). Итак, давайте проверим.

Цикл For с оператором break

for i in "Hello world": # посимвольная проверка
    if i == " ":
        break # если символ будет равен пробелу, то программа выйдет из цикла
    print(i, end= "")

# Вывод: Hello

Часто в циклах для счётчиков назначают переменные i, j, k

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


Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться