Python For Loop: краткое руководство по освоению итераций

Одной из самых интересных концепций языков программирования являются циклы. Представьте, что вы столкнулись с задачей. Это просто, но повторяется, например, считать от 1 до 100. Теперь вы можете делать это вручную, по одному числу за раз. Но это займет много времени и не будет особенно эффективным. Вот где появляются циклы в программировании.

Цикл — это управляющая структура, позволяющая повторять набор инструкций до тех пор, пока не будет выполнено определенное условие. Условие может быть любым: определенное количество повторений, определенное состояние данных или даже внешнее событие. Python For Loop — это особый вид цикла, который используется, когда вы знаете точное количество повторений цикла.

Python For Loop: краткое руководство по освоению итераций

Вы используете циклы for в своем коде, чтобы упростить процесс перебора последовательности или набора элементов. Это может быть список, строка, словарь, набор или любой другой итерируемый объект в Python .

Используя цикл for, вы можете выполнить блок кода для каждого элемента последовательности. Например, если вам нужно распечатать все элементы списка, вместо написания оператора печати для каждого элемента вы можете просто использовать цикл for. Это делает ваш код более эффективным, читабельным и менее подверженным ошибкам.

Прежде чем вы начнете писать циклы for, вы должны понять основы. В этой статье мы рассмотрим синтаксис циклов for Python, терминологию, используемую при работе с ними, и способы их использования в различных сценариях.

Давайте погрузимся в это!

Оглавление

Каков синтаксис для Python For Loops?

В Python циклы for используются для перебора итерируемых объектов. Основной синтаксис цикла for следующий:

for variable in iterable:
    # code to execute for each item

В этом синтаксисе «переменная» — это имя, которое вы выбираете для текущего элемента в итерации. «Итерируемый» — это последовательность или набор элементов, которые вы хотите повторить.

Код внутри цикла, обозначенный здесь как «# код для выполнения для каждого элемента», представляет собой действие, которое вы хотите выполнить для каждого элемента в итерируемом объекте.

В приведенном ниже примере показан базовый цикл for в Python:

cities = ['New York', 'London', 'Paris', 'Tokyo']

for city in cities:
    print(city)

В приведенном выше примере «город» — это переменная, а «города» — это итерация. Код внутри цикла — print(city), который печатает каждый город в списке.

Python For Loop: краткое руководство по освоению итераций

Python Iterables и Iterable Objects

Еще одна важная концепция, которую необходимо понимать при работе с циклами, — это концепция итераций и итерируемых объектов.

В Python итерируемый объект — это любой объект, способный возвращать свои элементы по одному. Это означает, что вы можете пройти через итерируемый объект, используя метод, подобный циклу.

Типичные примеры итерируемых объектов, с которыми вы столкнетесь, включают списки , строки , кортежи и словари .

Например, когда вы создаете список чисел, таких как [1, 2, 3, 4, 5], вы можете перебирать каждое число в списке. Каждое число является элементом итерируемого списка.

Точно так же, если у вас есть строка, такая как «привет», вы можете перебирать каждый символ в строке. В этом случае строка является итерируемой, и каждый символ («h», «e», «l», «l», «o») является элементом итерируемой.

Ниже вы найдете несколько примеров использования циклов for с различными итерируемыми объектами.

1. Перебор списка с помощью цикла Python For Loop

В Python список — это тип структуры данных, который может содержать упорядоченный набор элементов, что означает, что вы можете хранить все виды объектов — целые числа, числа с плавающей запятой, строки и даже другие списки или сложные объекты.

Чтобы просмотреть список с помощью цикла for, вы можете использовать следующий код:

fruits = ['apple', 'banana', 'cherry']
for fruit in fruits:
    print(fruit)

Этот код напечатает все фрукты в списке фруктов, как показано ниже:

Python For Loop: краткое руководство по освоению итераций

2. Перебор кортежа с помощью цикла Python For

Кортеж в Python — это набор упорядоченных и неизменяемых объектов. Это означает, что после создания кортежа вы не можете изменить его содержимое.

Чтобы просмотреть кортеж с помощью цикла for, вы можете использовать следующий код Python:

colors = ('red', 'green', 'blue')

for color in colors:
    print(color)

Цикл for будет проходить по всем элементам кортежа и выводить их на экран, как показано на рисунке ниже:

Python For Loop: краткое руководство по освоению итераций

3. Перебор словаря с помощью цикла Python for

Словарь в Python — это неупорядоченный набор данных, хранящихся в виде ключа и значения. Это также известно как пара ключ-значение.

Чтобы просмотреть словарь с помощью цикла for, вы можете использовать следующий код Python:

student = {'name': 'John', 'age': 24, 'course': 'Computer Science'}

for key, value in student.items():
    print(key, value)

Цикл for перебирает все пары ключ-значение в словаре и выводит их на экран, как показано ниже:

4. Перебор строки с помощью цикла Python For

Строка в Python — это последовательность символов. Строки используются в Python для записи текстовой информации, а также произвольных наборов байтов (например, содержимого файла изображения).

Чтобы перебрать строку в Python с помощью цикла for, вы можете использовать код, приведенный ниже:

greeting = "Hello, world!"
for char in greeting:
    print(char)

Цикл for выведет каждый алфавит в строке на экран, как показано ниже:

Python For Loop: краткое руководство по освоению итераций

Приведенные выше примеры показывают, как полезны циклы при переборе различных типов данных. Вы также можете управлять функциональностью ваших циклов for, используя функции и операторы внутри вашего цикла.

Давайте рассмотрим некоторые ключевые функции и операторы, которые часто используются с циклами for в следующем разделе.

Ключевые функции и операторы в Python для циклов

Когда вы используете циклы for, функции и операторы могут улучшить ваш контроль над циклом и сделать ваш код более эффективным и легким для чтения.

Мы перечислили ключевые функции и операторы, используемые в циклах for ниже:

1. Как использовать функцию Range() с циклом For в Python

Функция range() позволяет генерировать последовательность чисел. Обычно он используется для итерации заданное количество раз.

Основной синтаксис:

for i in range(start, stop, step):
  # your code here
  • start : необязательный параметр, указывающий начальную точку; по умолчанию это 0.

  • stop : обязательный параметр, определяющий конечную точку (эксклюзивный).

  • step : необязательный параметр, указывающий приращение со значением по умолчанию 1.

Чтобы дать вам четкое представление о функции диапазона, взгляните на пример ниже, где мы печатаем числа от 1 до 5, используя функцию диапазона с циклом for:

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

Python For Loop: краткое руководство по освоению итераций

2. Как использовать оператор Break с циклом for в Python

Оператор break позволяет выйти из цикла for при выполнении определенного условия. Когда в теле цикла достигается ключевое слово break , цикл немедленно останавливается.

Ниже приведен пример цикла for с оператором break:

for i in range(10):
  if i == 5:
    break
  print(i)

Python For Loop: краткое руководство по освоению итераций

Этот код представляет собой цикл, работающий от 0 до 9. Если текущее число равно 5, он немедленно останавливает цикл, используя break . Итак, он печатает только числа от 0 до 4. Когда он достигает 5, он останавливается и больше не печатает числа.

3. Как использовать оператор continue с циклом for в Python

Оператор continue используется для пропуска текущей итерации и перехода к следующей.

Ниже приведен пример оператора continue с циклом for:

for i in range(5):
  if i == 3:
    continue
  print(i)

Цикл повторяется от 0 до 4. Если текущее число равно 3, мы пропускаем его, прежде чем завершить оставшуюся часть цикла для этой итерации, используя continue . Это означает, что вы печатаете все числа от 0 до 4, кроме 3.

Python For Loop: краткое руководство по освоению итераций

Обратите внимание на изображение выше, что число 3 пропущено из-за оператора continue .

4. Как использовать выписку о пропуске

Оператор pass — это заполнитель, который намеренно ничего не делает. Его можно использовать, когда вам нужна структура цикла, но пока нет конкретного кода для выполнения в нем.

Ниже приведен пример оператора pass с циклом for:

for i in range(5):
  pass

Этот цикл ничего не выведет, так как оператор pass является заполнителем для будущего кода. Циклы являются гибкими и могут быть адаптированы для любого варианта использования, например, для использования циклов с блоком else кода.

Если вы хотите попрактиковаться в работе с циклами for, посмотрите следующее видео:

Когда вы начнете писать циклы for, вы, в конце концов, захотите перейти к продвинутым методам циклов for. Знание передовых методов позволит вам писать более эффективные циклы for практически для любого варианта использования.

Давайте рассмотрим некоторые из продвинутых методов работы с циклами for в следующем разделе!

3 продвинутых метода с использованием Python For Loops

Программисту на Python часто приходится иметь дело с наборами элементов, таких как списки или строки, и выполнять операции над каждым элементом. Для выполнения этих операций вам необходимо иметь базовое представление о передовых методах работы с циклами for.

В этом разделе мы рассмотрим некоторые продвинутые методы использования циклов for в Python. Мы рассмотрим вложенные циклы, списки и функцию enumerate().

1. Как использовать вложенные циклы Python for

Бывают случаи, когда вам нужно перебрать несколько измерений данных, таких как матрица или список списков. В таких случаях вы можете использовать вложенные циклы, которые представляют собой цикл внутри другого цикла. Вложенный цикл позволяет эффективно перемещаться по нескольким измерениям данных.

Ниже приведен пример вложенного цикла for:

matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

for row in matrix:
    for val in row:
        print(val, end=' ')
    print()

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

После печати каждой строки мы начинаем новую строку. Короче говоря, мы печатаем всю матрицу построчно.

Python For Loop: краткое руководство по освоению итераций

2. Как использовать Python для циклов for для понимания списков

Если вы создаете новый список на основе существующего списка или другого итерируемого объекта, вы можете использовать понимание списка. Он позволяет создать новый список, применив выражение к каждому элементу итерируемого объекта в одной строке кода.

Общий синтаксис спискового понимания:

[expression for variable in iterable if condition]

Предположим, вы хотите создать список квадратов для диапазона чисел, вы можете использовать следующее понимание списка:

squares = [x ** 2 for x in range(1, 11)]
print(squares)

Этот код создает список квадратов для чисел от 1 до 10 с помощью одной строки кода.

Python For Loop: краткое руководство по освоению итераций

3. Как использовать функцию Enumerate()

Когда вы перебираете список или строку и вам нужно знать индекс текущего элемента, вы используете функцию enumerate() . Он возвращает каждый элемент вместе с его индексом, что упрощает обработку положения элементов.

Ниже приведен пример функции перечисления с циклом for:

fruits = ['apple', 'banana', 'cherry']

for idx, fruit in enumerate(fruits):
    print(f"{idx}: {fruit}")

В этом коде мы перебираем список фруктов, но мы также отслеживаем индекс каждого элемента с помощью функции перечисления , которая возвращает каждый элемент в списке вместе с его индексом.

Итак, для каждой итерации цикла idx — это индекс, а fruit — это элемент. Затем мы печатаем индекс, за которым следует фрукт. Это дает нам пронумерованный список фруктов.

Python For Loop: краткое руководство по освоению итераций

Теперь, когда вы изучили расширенные методы работы с циклами for, вы можете начать понимать, насколько гибкими могут быть циклы при обработке различных сценариев. Но, как и в случае с любым инструментом, важно знать, когда его использовать, а когда лучше подойдет другой инструмент.

Имея это в виду, давайте сосредоточимся на сравнении циклов for с циклами while. Это поможет вам решить, какой тип цикла лучше всего подходит для вашей конкретной ситуации кодирования.

Цикл for и цикл while

В Python циклы for и while служат разным целям.

Циклы for используются для перебора последовательностей, таких как списки или кортежи, и у них есть определенный диапазон итераций.

В то время как циклы, с другой стороны, продолжают работать до тех пор, пока определенное условие остается истинным.

# For loop example
for item in sequence:
    # Code to execute for each item in sequence

# While loop example
while condition:
    # Code to execute while condition is true

Предположим, вы хотите напечатать первые 5 чисел, начиная с 0.

Используя цикл for, вы должны написать:

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

Цикл for является простым, когда вы заранее знаете точное количество итераций, как в этом случае, когда вы знаете, что хотите напечатать 5 чисел.

С другой стороны, используя цикл while, вы должны написать:

i = 0
while i < 5:
    print(i)
    i += 1

В цикле while вы начинаете с начального условия (i < 5). Цикл продолжает работать до тех пор, пока условие не перестанет быть истинным. Вы должны увеличить i в теле цикла, иначе он будет работать вечно.

Python For Loop: краткое руководство по освоению итераций

Для этой задачи цикл for проще и менее подвержен ошибкам. Но цикл while обеспечивает большую гибкость в ситуациях, когда количество итераций заранее неизвестно.

Например, рассмотрим сценарий, в котором вы запрашиваете у пользователя ввод до тех пор, пока он не введет действительное число. Вы не знаете, сколько раз вам придется спрашивать, поэтому в этом случае уместен цикл while:

while True:
    user_input = input("Please enter a number: ")
    if user_input.isdigit():
        print("Thank you!")
        break
    else:
        print("Invalid input. Try again.")

Python For Loop: краткое руководство по освоению итераций

В этом коде цикл while продолжает запрашивать у пользователя ввод до тех пор, пока он не введет действительное число. Функция isdigit() проверяет, является ли ввод числом.

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

Последние мысли

Циклы for являются важным инструментом в вашем наборе инструментов для программирования. Они позволяют эффективно выполнять повторяющиеся задачи. Понимая циклы for, вы получаете возможность манипулировать данными, автоматизировать задачи и решать сложные проблемы с помощью всего нескольких строк кода.

Освоив циклы for, вы сможете сделать свой код более читабельным, эффективным и более похожим на Python. Практика является ключом к овладению этой конструкцией. Благодаря знаниям, полученным из этого руководства, вы хорошо подготовлены для решения широкого круга задач программирования с использованием циклов for в Python!

Leave a Comment

Расчет недельных продаж с помощью DAX в LuckyTemplates

Расчет недельных продаж с помощью DAX в LuckyTemplates

В этом руководстве показано, как в конечном итоге можно рассчитать разницу между еженедельными результатами продаж с помощью DAX в LuckyTemplates.

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Как сохранить и загрузить файл RDS в R

Как сохранить и загрузить файл RDS в R

Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

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

Введение в фильтрацию контекста в LuckyTemplates

Введение в фильтрацию контекста в LuckyTemplates

В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.

Идеи материализации кэшей данных в DAX Studio

Идеи материализации кэшей данных в DAX Studio

В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.

Бизнес-отчетность с использованием LuckyTemplates

Бизнес-отчетность с использованием LuckyTemplates

Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.