Быстрый в изучении - мощный в программировании
>> Telegram ЧАТ для Python Программистов

Свободное общение и помощь советом и решением проблем с кодом! Заходите в наш TELEGRAM ЧАТ!

>> Python Форум Помощи!

Мы создали форум где отвечаем на все вопросы связанные с языком программирования Python. Ждем вас там!

>> Python Канал в Telegram

Обучающие статьи, видео и новости из мира Python. Подпишитесь на наш TELEGRAM КАНАЛ!

Итерации и циклы в Python

циклы в Python

Для организации циклов наиболее часто используется инструкция 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/ профессиональная интернет аналитика о целях интернет-рекламы.

Оставьте комментарий!

Используйте нормальные имена.

Имя и сайт используются только при регистрации

Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email. При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д., а также подписку на новые комментарии.

(обязательно)