Основные тезисы
1. В Python есть два типа циклов: while
и for
:
- цикл
while
выполняет выражение или набор выражений, пока заданное логическое условие истинно, например: - цикл
for
многократно выполняет набор выражений; он используется для перебора последовательности (например, списка, словаря, кортежа или набора - вы скоро узнаете о них) или других повторяемых объектов (например, строк). Вы можете использовать циклfor
для перебора последовательности чисел с помощью встроенной функцииrange
. Посмотрите на примеры ниже:
# Example 1
while True:
print("Stuck in an infinite loop.")
# Example 2
counter = 5
while counter > 2:
print(counter)
counter -= 1
# Example 1
word = "Python"
for letter in word:
print(letter, end="*")
# Example 2
for i in range(1, 10):
if i % 2 == 0:
print(i)
2. Вы можете использовать операторы break
и continue
, чтобы изменить ход цикла:
- Вы используете
break
для выхода из цикла, например: - Вы используете
continue
, чтобы пропустить текущую итерацию и продолжить следующую итерацию, например:
text = "OpenEDG Python Institute"
for letter in text:
if letter == "P":
break
print(letter, end="")
text = "pyxpyxpyx"
for letter in text:
if letter == "x":
continue
print(letter, end="")
3. Циклы while
и for
также могут иметь ветвь else
в Python. Ветвь else
выполняется после завершения цикла, если он не был прерван break
, например:
n = 0
while n != 3:
print(n)
n += 1
else:
print(n, "else")
print()
for i in range(0, 3):
print(i)
else:
print(i, "else")
4. Функция range()
генерирует последовательность чисел. Он принимает целые числа и возвращает объекты диапазона. Синтаксис range()
выглядит следующим образом: range(start, stop, step)
, где:
start
- необязательный параметр, определяющий начальный номер последовательности (по умолчанию 0)stop
- необязательный параметр, определяющий конец сгенерированной последовательности (не включается),- и
step
- необязательный параметр, определяющий разницу между числами в последовательности (по умолчанию 1).
Пример кода:
for i in range(3):
print(i, end=" ") # Outputs: 0 1 2
for i in range(6, 1, -2):
print(i, end=" ") # Outputs: 6, 4, 2