Цикл for в Python имеет возможность перебирать элементы любой последовательности, например списка или строки.
Синтаксис
Синтаксис цикла for в Python:
for iterating_var in последовательность:
оператор(ы)
Если последовательность содержит список выражений, она вычисляется первой. Затем первый элемент последовательности присваивается переменной итерации iterating_var. Далее выполняется блок операторов. Каждому элементу в списке присваивается значение iterating_var, и блок операторов выполняется до тех пор, пока не будет исчерпана вся последовательность.
Блок-схема
Пример
#!/usr/bin/python
for letter in 'Python': # Первый пример
print 'Текущая буква: ', letter
fruits = ['банан', 'яблоко', 'манго']
for fruit in fruits: # Второй пример
print 'Текущий фрукт: ', fruit
print "До свидания!"
Когда приведённый выше код выполнится, он даст следующий результат:
Текущая буква: P
Текущая буква: y
Текущая буква: t
Текущая буква: h
Текущая буква: o
Текущая буква: n
Текущий фрукт: банан
Текущий фрукт: яблоко
Текущий фрукт: манго
До свидания!
Итерация цикла for по индексу последовательности
Альтернативный способ перебора каждого элемента — смещение индекса в самой последовательности. Ниже приведен простой пример:
#!/usr/bin/python
fruits = ['банан', 'яблоко', 'манго']
for index in range(len(fruits)):
print 'Текущий фрукт: ', fruits[index]
print "До свидания!"
Когда приведённый выше код выполнится, он даст следующий результат:
Текущий фрукт: банан
Текущий фрукт: яблоко
Текущий фрукт: манго
До свидания!
Здесь мы воспользовались помощью встроенной функции len(), которая предоставляет общее количество элементов в кортеже, а также встроенной функции range(), чтобы дать нам фактическую последовательность для повторения.
Использование оператора else в цикле for
Python поддерживает оператор else, объединенный с оператором цикла for. Если оператор else используется с циклом for, оператор else выполняется, когда цикл исчерпал итерацию списка.
В следующем примере показана конструкция оператора else с оператором for, который выполняет поиск простых чисел от 10 до 20.
#!/usr/bin/python
for num in range(10,20): #повторять от 10 до 20
for i in range(2,num): #перебирать множители числа
if num%i == 0: #определить первый множитель
j=num/i #вычислить второй множитель
print '%d равно %d * %d' % (num,i,j)
break #перейти к следующему числу, #первый FOR
else: # else часть цикла
print num, 'это простое число'
break
Когда приведённый выше код выполнится, он даст следующий результат:
10 равно 2 * 5
11 это простое число
12 равно 2 * 6
13 это простое число
14 равно 2 * 7
15 равно 3 * 5
16 равно 2 * 8
17 это простое число
18 равно 2 * 9
19 это простое число
Оглавление
- 1. Python – Самоучитель для начинающих
- 2. Python – Обзор
- 3. Python – Установка среды
- 4. Python – Базовый синтаксис
- 4.1. Python – Аргументы командной строки
- 5. Python – Типы переменных
- 6. Python – Основные операторы
- 6.1. Python – Арифметические операторы
- 6.2. Python – Операторы сравнения
- 6.3. Python – Операторы присваивания: примеры
- 6.4. Python – Побитовые операторы
- 6.5. Python – Логические операторы
- 6.6. Python – Операторы членства
- 6.7. Python – Операторы идентификации
- 6.8. Python – Приоритет операторов
- 7. Python – Условные операторы
- 7.1. Python – Условие if
- 7.2. Python – Условные операторы if...else и elif
- 7.3. Python – Вложенные операторы if
- 8. Python – Циклы
- 8.1. Python – Цикл while
- 8.2. Python – Цикл for
- 8.3. Python – Вложенные циклы
- 8.4. Python – Оператор break
- 8.5. Python – Оператор continue
- 8.6. Python – Оператор pass
- 9. Python – Числа
- 9.1. Python – Метод abs()
- 9.2. Python – Метод ceil()
- 9.3. Python – Метод cmp()
- 9.4. Python – Метод exp()
- 9.5. Python – Метод fabs()
- 9.6. Python – Метод floor()
- 9.7. Python – Метод log()
- 9.8. Python – Метод log10()
- 9.9. Python – Метод max()
- 9.10. Python – Метод min()
- 9.11. Python – Метод modf()
- 9.12. Python – Метод pow()
- 9.13. Python – Метод round()
- 9.14. Python – Метод sqrt()
- 9.15. Python – Метод choice()
- 9.16. Python – Метод randrange()
- 9.17. Python – Метод random()
- 9.18. Python – Метод seed()
- 9.19. Python – Метод shuffle()
- 9.20. Python – Метод uniform()
- 9.21. Python – Метод acos()
- 9.22. Python – Метод asin()
- 9.23. Python – Метод atan()
- 9.24. Python – Метод atan2()
- 9.25. Python – Метод cos()
- 9.26. Python – Метод hypot()
- 9.27. Python – Метод sin()
- 9.28. Python – Метод tan()
- 9.29. Python – Метод degrees()
- 9.30. Python – Метод radians()