Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Python

Мастерство цикла for в Python: Синтаксис, примеры и продвинутые паттерны

Цикл for в Python

Узнайте, как перебирать списки, кортежи, строки и другие итерируемые объекты в Python с понятными пошаговыми примерами.

Видео: Цикл for в Python

Что такое цикл for в Python?

Цикл for итерируется по итерируемому объекту — такому как список, кортеж или строка — выполняя блок кода один раз для каждого элемента.

Синтаксис цикла for

for val in sequence:
    # тело цикла

Здесь val захватывает каждый элемент из sequence во время итерации.

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

Блок-схема цикла for

Мастерство цикла for в Python: Синтаксис, примеры и продвинутые паттерны

Пример: Суммирование списка чисел

# Программа для нахождения суммы всех чисел в списке
# Список чисел
numbers = [6, 5, 3, 8, 4, 2, 5, 4, 11]
# переменная для хранения суммы
sum = 0
# итерация по списку
for val in numbers:
    sum = sum + val
print("The sum is", sum)

При запуске вывод будет:

The sum is 48

Функция range()

Функция range() генерирует последовательность чисел. range(10) даёт от 0 до 9.

Принимает опциональные start, stop и step: range(start, stop, step). Если step опущен, по умолчанию 1.

Внутренне range ленив — вычисляет каждое число по требованию, а не сохраняет все. Это делает его память-еффективным для больших последовательностей.

Для материализации всей последовательности оберните в list():

print(range(10))
print(list(range(10)))
print(list(range(2, 8)))
print(list(range(2, 20, 3)))

Вывод

range(0, 10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[2, 3, 4, 5, 6, 7]
[2, 5, 8, 11, 14, 17]

Использование range() в цикле for распространено для числовой итерации или когда нужен индекс каждого элемента:

# Программа для итерации по списку с использованием индекса
genre = ['pop', 'rock', 'jazz']
# итерация по списку с индексом
for i in range(len(genre)):
    print("I like", genre[i])

Вывод

I like pop
I like rock
I like jazz

Цикл for с else

Цикл for может включать опциональную клаузулу else. Блок else выполняется только если цикл завершился нормально (т.е. без break).

Пример:

digits = [0, 1, 5]
for i in digits:
    print(i)
else:
    print("No items left.")

Вывод:

0
1
5
No items left.

В сочетании с break клаузула else может сигнализировать о неудаче поиска:

# Программа для вывода оценки студента из записи
student_name = 'Soyuj'
marks = {'James': 90, 'Jules': 55, 'Arthur': 77}
for student in marks:
    if student == student_name:
        print(marks[student])
        break
else:
    print('No entry with that name found.')

Вывод

No entry with that name found.

Python

  1. Цикл for в C#: синтаксис, поток выполнения и практические примеры
  2. Освоение цикла for в C++: пошаговое руководство
  3. Цикл for в C: синтаксис, механика и практические примеры
  4. Мастерство операторов Python: Полное руководство
  5. Мастерство цикла while в Python: Синтаксис, примеры и лучшие практики
  6. Словари в Python: создание, манипуляции и продвинутые техники
  7. Java-программа для идентификации чисел Армстронга с использованием for-цикла
  8. Освоение циклов Python: for, while, break, continue и enumerate
  9. Освоение функции range() в Python: от основ к продвинутым сценариям
  10. Освоение enumerate() в Python: циклы с индексами для списков, кортежей, строк и словарей