Цикл for в Python — как работает

В программировании часто требуется выполнить блок кода несколько раз.

Содержание

Оператор цикла for с функцией range() в Python

В Python для выполнения блока кода фиксированное количество раз используется цикл for.

Ниже показан синтаксис цикла for:

for index in range(n):
    statement

В этом синтаксисе index называется счетчиком цикла. А n — это количество раз, которое цикл выполнит оператор. Имя счетчика цикла не обязательно должно быть index, вы можете использовать любое имя.

Range() — встроенная функция в Python. Она похожа на функцию print() в том смысле, что она всегда доступна в программе. Range(n) генерирует последовательность из n целых чисел, начиная с нуля. Она увеличивает значение на единицу, пока не достигнет n.

Итак, range(n) генерирует последовательность чисел: 0,1, 2, …n-1. Обратите внимание, что она всегда меньше конечного числа (n).

Следующая диаграмма иллюстрирует оператор цикла for:

Схема работы оператора цикла for в Python

В следующем примере показано, как использовать цикл for с функцией range() для отображения на экране пяти чисел от 0 до 4:

for index in range(5):
    print(index)

Выход:

0
1
2
3
4

В этом примере цикл for выполняет оператор print(index) ровно пять раз.

Если вы хотите отобразить на экране пять цифр от 1 до 5, вы можете сделать что-то вроде этого:

for index in range(5):
    print(index + 1)

Выход:

1
2
3
4
5

В этом примере мы увеличиваем индекс на единицу в каждой итерации и выводим его на печать. Однако есть способ сделать это лучше.

Указание начального значения для последовательности

По умолчанию функция range() использует ноль в качестве начального числа последовательности.

Кроме того, функция range() позволяет указать начальное число следующим образом:

range(start, stop)

В этом синтаксисе функция range() увеличивает начальное значение на единицу до тех пор, пока не достигнет конечного значения.

В следующем примере цикл for используется для вывода на экран пяти чисел от 1 до 5:

for index in range(1, 6):
    print(index)

Выход:

1
2
3
4
5

Указание приращения для последовательности

По умолчанию диапазон(старт, стоп) увеличивает начальное значение на единицу в каждой итерации цикла.

Чтобы увеличить начальное значение на другое число, используйте следующую форму функции range():

range(start, stop, step)

В этой форме вы можете указать значение, которое должна увеличить функция range().

В следующем примере показаны все нечетные числа от 0 до 10:

for index in range(0, 11, 2):
    print(index)

Выход:

0
2
4
6
8
10

Использование цикла for в Python для вычисления суммы последовательности

В следующем примере оператор цикла for используется для вычисления суммы чисел от 1 до 100:

sum = 0
for num in range(101):
    sum += num

print(sum)

Выход:

5050

Как это работает.

  • Сначала сумма инициализируется нулем.
  • Во-вторых, сумма добавляется к числу от 1 до 100 в каждой итерации.
  • Наконец, сумма выводится на экран.

Кстати, вы можете воспользоваться простой формулой:

n = 100
sum = n *(n+1)/2
print(sum)
Похожие посты
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *