Итерации и циклы в Python
Python для начинающих » Общие вопросы for в python, python выход из цикла, python цикл for
Для организации циклов наиболее часто используется инструкция for, которая позволяет выполнить обход элементов коллекции. Итерации – одна из самых богатых особенностей языка Python. Однако наиболее часто используемой формой итераций является простой цикл по элементам последовательности, такой как строка, список или кортеж. Пример реализации итераций приводится ниже:
# -*- coding: utf-8 -*-
for n in [1,2,3,4,5,6,7,8,9]:
print "2 в степени %d = %d" % (n, 2**n)
В данном примере на каждой итерации переменная n будет последовательно получать значения из списка [1,2,3,4,...,9]. Поскольку необходимость организовать цикл по фиксированному диапазону целочисленных значений возникает достаточно часто, для этих целей используется сокращенная форма записи:
for n in range(1, 10):
print "2 в степени %d = %d" % (n, 2**n)
Функция range(i,j [,stride]) создает объект, представляющий диапазон целых чисел со значениями от i по j-1. Если начальное значение не указано, оно берется равным нулю. В третьем необязательном аргументе stride можно передать шаг изменения значений. Например:
a = range(5) # a = 0, 1, 2, 3, 4
b = range(1, 8) # b = 1, 2, 3, 4, 5, 6, 7
c = range(0, 14, 3) # c = 0, 3, 6, 9, 12
d = range(8, 1, -1) # d = 8, 7, 6, 5, 4, 3, 2
Будьте внимательны при использовании функции range() в Python 2, так как в этой версии интерпретатора она создает полный список значений. Для очень больших диапазонов это может привести к ошибке нехватки памяти. Поэтому при работе с ранними версиями Python программисты используют альтернативную функцию xrange(). Например:
for i in xrange(1000000): # i = 0, 1, 2, ... , 9999999
# инструкции
Функция xrange() создает объект, который вычисляет очередное значение только в момент обращения к нему. Именно поэтому данный способ является более предпочтительным при работе с большими диапазонами целых чисел. В версии Python 3 функция xrange() была переименована в range(), а прежняя реализация функции range() была удалена. Возможности инструкции for не ограничиваются последовательностями целых чисел, она также может использоваться для реализации итераций через объекты самых разных типов, включая строки, списки, словари и файлы. Например:
# -*- coding: utf-8 -*-
a = "Привет, Мир!"
# Вывести отдельные символы в строке а
for c in a:
print c
b = ['Илия', 'Миша', 'Оля']
# Вывести элементы списка
for name in b:
print name
c = {'GOOG' : 490.10, 'IBM' : 91.50, 'AAPL' : 123.15}
# Вывести элементы словаря
for key in c:
print key, c[key]
# Вывести все строки из файла
f = open('exemple.txt')
for line in f:
print line,
Цикл for является одной из самых мощных особенностей языка Python, так как позволяет вам создавать собственные объекты-итераторы и функции генераторы, которые возвращают последовательности значений.
Покупаете рекламу в интернете но не получаете нужный эффект? Ознакомьтесь с http://aweb.ua/seo-blog/o-celyax-internet-reklamy-i-akcentax-v-internet-analitike/ профессиональная интернет аналитика о целях интернет-рекламы.
- Игровой автомат Satoshi's Secret - в казино Вулкан Рояль играй в самые щедрые слоты
- Абстрактные методы в Python
- Как работают функции в Python?
- Игровой автомат Sindbad - играть онлайн в казино Адмирал 777 в слоты от Evoplay
- Игровой автомат Golden Grimoire - в Адмирал Х высокие шансы на огромные выигрыши
- Какими преимуществами обладает Python перед другими языками?
- Игровой автомат Vegas Hits - играй в лучшие слоты на официальный клуб казино Вулкан