Циклы в программировании — это строки кода, которые многократно выполняются компьютером до тех пор, пока не будут выполнены определенные условия. Этот цикл может использоваться всеми языками программирования, включая Python.
В Python есть два типа циклов. То есть:
- Пока
- Для
While может использоваться для циклов, в которых количество итераций известно, а количество итераций неизвестно. При использовании While известны только условия цикла.
А использование For можно использовать только для циклов с заданным количеством повторений.
Во-первых, мы узнаем, как использовать цикл While.
Пока цикл
Синтаксис цикла «Пока»:
while condition: program ... program ...
Пока условие истинно, программа в цикле While будет продолжать работать. И остановится, только если условие имеет значение False.
Пример:
n = 1 while n <= 5: print("Hello World") n = n + 1
Выход:
Hello World Hello World Hello World Hello World Hello World
В приведенной выше программе мы делаем значение n = 1, если мы делаем его 0, то вывод будет повторяться 6 раз. Потому что python использует целочисленную систему, которая считает числа, начиная с 0.
И условие для программы n ≤ 3, что означает, что пока значение n не достигло 3, она будет продолжать работать. И n + 1 используется для добавления 1 значения к n. Таким образом, значение n, которое ранее было равно 1, будет продолжать увеличиваться на 1, пока программа выполняется.
В цикле while вы можете использовать условие «Истина», что означает, что программа будет продолжать работать без остановки. Посмотрите на следующий пример.
Скрипт:
while True: password = input("Input Password: ")
Выход:
Input Password: 123 Input Password: 142 Input Password: 1531 Input Password: 102 Input Password: 1542 Input Password: ...
Программа будет работать без остановки, потому что в программе нет команды на остановку программы. Команда остановки для остановки циклической программы с условием True состоит в использовании «разрыва».
while True: password = int(input("Input Password: ")) if password == 4321: break print("Hello, there!")
Выход:
Input Password: 2532 Input Password: 1234 Input Password: 4321 Hello, there!
В цикл мы можем добавить оператор continue, который должен пропустить текущую итерацию до следующей итерации. Посмотрите на следующий пример.
Скрипт:
i = 1 while i < 10: i = i+1 if i % 2 == 0: continue print(i, "= Hello, there!")
Выход:
1 = Hello, there! skipped --> i % 2 = 0 3 = Hello, there! skipped --> i % 2 = 0 5 = Hello, there! skipped --> i % 2 = 0 7 = Hello, there! skipped --> i % 2 = 0 9 = Hello, there! skipped --> i % 2 = 0
Оно было пропущено программой, так как значение ‘i’ делится на 0.
Примечание. Если в Python есть бесконечный цикл, его можно решить, нажав CTRL+C.
Для цикла
Синтаксис для цикла:
for i in range (j): program ... program ...
В соответствии с приведенным выше синтаксисом цикл For выполняется 'j' раз. Для каждой итерации значение ‘i’ будет меняться, начиная с 0, 1, 2, 3, …, n-1. Если оно достигает этого значения, цикл останавливается.
Пример:
for i in range (4): print("Hello World")
Выход:
Hello World Hello World Hello World Hello World
Мы можем создавать разные диапазоны. Например, диапазон(x, y).
for i in range (1, 4): print("Number = ", i)
Выход:
Number = 1 Number = 2 Number = 3
И мы также можем сделать range(x, y, z). z - значение шага. В range(x, y, step) имеет значение величина увеличения значения переменной-счетчика. Сначала значение переменной счетчика равно x, а затем в каждом цикле значение увеличивается на количество шагов. И цикл остановится, пока значение не достигнет y.
Пример:
for i in range (1, 4): print("Number = ", i)
Выход:
Number = 1 Number = 3 Number = 5 Number = 7 Number = 9
Мы можем отобразить нечетные числа от 1 до 20 без команды печати 20 раз.
Скрипт:
number = 0 print("Odd Number 0 - 20") for i in range(20): if (i % 2 == 1): #change enter to space using end command after print print(i, end=' ')
Выход:
Odd Number 0 - 20 1 3 5 7 9 11 13 15 17 19
И мы можем суммировать кратные 2 (четные числа) от 0 до 20 без подсчета по одному.
Скрипт:
number = 0 total = 0 print("Even number from 0-20") print() for i in range(20): if (i % 2 != 1): print(i, end=' ') number = number + 1 total = total + i print() print("Total sum of numbers:", total) print("Number of even numbers:", number)
Выход:
Even number from 0-20 0 2 4 6 8 10 12 14 16 18 Total sum of numbers: 90 Number of even numbers: 10
И мы создадим простую программу, которая делает треугольники из звезд (*).
Пример 1:
for i in range (0, 4): for j in range(0, i+1): print("* ", end = "") print()
Вывод примера 1:
* * * * * * * * * *
Пример 2:
for i in range(4, 0, -1): for j in range(1, i + 1): print("* ", end = "") print()
Вывод примера 2:
* * * * * * * * * *
Узнав о цикле в питоне, мы можем сделать мини-игру. Мини-игра выберет случайное число от 0 до 100, и вам нужно будет угадать его. Каждый неправильный ответ будет уменьшать ваш балл на -2. Давайте попробуем эту скриптовую программу.
Скрипт мини-игры:
from random import randint scores = 100 #pick random number numbers = randint(0, 100) print("Guess the numbers starting from 0-100") print() while True: guess = int(input("Your Guess: ")) if guess > numbers: print("Your guess is too big") #decrease the score scores -= 2 print() elif guess < numbers: print("Your guess is too small") #decrease the score scores -= 2 print() elif guess == numbers: print("Congratulations, your guess is right!!") print() break print("Your score:", scores)
Вы можете попробовать приведенный выше скрипт на своем собственном питоне или, возможно, захотите изменить программу.
Надеюсь, эта статья поможет начинающим программистам на Python. Спасибо за чтение. Хорошего дня!