Автор оригинала: Pankaj Kumar.
- Python для петли используется для повторения последовательности элементов.
- Петтерна реализована с использованием Зарезервированное ключевое слово – для Отказ
- Код для цикла выполняется для каждого элемента последовательности.
- Мы можем выбраться из-за цикла, используя Выявление «Перерыв» Отказ Мы можем использовать
- Продолжить утверждение пропустить выполнение кода в цикле для элемента для элемента. Python для петли отличается от других языков программирования, как оно больше ведет себя как
- итератор Отказ Мы можем использовать для петли, чтобы повторять
- Кортеж , Список , Установить или Строка Отказ Все эти объекты являются последовательностью в Python. Мы можем иметь
- вложен для петлей повторять последовательность последовательностей.
Python для синтаксиса петли
Python для синтаксиса петли очень прост. Использует в операторе Итерацию по поводу элементов в последовательности.
for element in sequence: # for statement code block
Диаграмма потока для петли
Python для петлевых примеров
Давайте посмотрим на несколько примеров для цикла с различными типами последовательностей.
1. строка
Строка Python – это последовательность символов. Давайте посмотрим на простую программу для печати индекса и символа в строке.
message = "Hello" count = 0 for character in message: print(f'Index:{count}, Character:{character}') count += 1
Выход:
2. кортеж
Скажем, у нас есть кортеж струн. Мы хотим преобразовать все элементы в нижний регистр. Мы можем написать полезную функцию для этого и использовать для петли, чтобы повторить тему по элементам кортежа.
def to_lower_case(my_tuple): temp_list = [] for item in my_tuple: temp_list.append(str(item).lower()) return tuple(temp_list) fruits = ("Apple", "Orange", "BANANA") fruits_new = to_lower_case(fruits) print(fruits_new)
Выход : («Яблоко», «оранжевый», «банан»)
Примечание : Мы используем список, чтобы добавить элементы в цикле для цикла, потому что кортеж неизменен в Python.
3. Список
Давайте посмотрим на пример итерацию по поводу списка целых чисел и печати, если это четное число или нечетное число.
list_ints = [1, 2, 3, 4, 5] for i in list_ints: if i % 2 == 0: print(f'{i} is even.') else: print(f'{i} is odd.')
Выход:
4. Установить
Вот простой пример для печати элементов набора, используя для цикла.
set_cities = set() set_cities.add("New York") set_cities.add("New Delhi") set_cities.add("Bangalore") set_cities.add("London") set_cities.add("Bangalore") # duplicate item, will be removed from set for city in set_cities: print(city)
Выход:
Примечание : Set – это неупорядоченная последовательность в Python. Таким образом, выход может варьироваться в каждом исполнении программы.
5. Словарь
Словарь Python не является последовательностью. Таким образом, мы не можем напрямую повторить его элементы. Тем не менее, у него есть метод Предметы ()
Это возвращает установленную последовательность его элементов. Мы можем использовать этот метод, чтобы повторить его по словарю элементы.
my_dict = {"1": "Apple", "2": "Kiwi", "3": "Orange"} for k, v in my_dict.items(): print(f'Key={k}, Value={v}')
Выход:
Использование оператора BREAK для выхода для цикла
Мы можем использовать оператор разрыва для выхода для цикла, без передачи всех элементов.
Допустим, у нас есть список сообщений для обработки. Если мы столкнулись с сообщением «Выход», обработка должна остановиться. Мы можем использовать оператор разрыва для реализации этого сценария.
messages = ["Hi", "Hello", "Exit", "Adios", "Hola"] for msg in messages: if msg == "Exit": break; print(f'Processing {msg}')
Выход:
Python для петли с оператором продолжения
Иногда мы хотим пропустить обработку некоторых элементов в последовательности. Мы можем использовать оператор продолжения для этого.
ints = (1, 2, 3, 4, 5, 6) # process only odd numbers for i in ints: if i % 2 == 0: continue print(f'Processing {i}')
Выход:
Python для петли с диапазоном () функцией
Python Диапазон ()
Функция генерирует последовательность чисел. Мы можем использовать это для цикла для выполнения блока кода на определенное количество раз.
Давайте посмотрим, как использовать диапазон () функцию для цикла для выполнения кода 5 раз.
for i in range(5): print("Processing for loop:", i)
Выход:
для петли с остальным утверждением
Мы можем использовать ELSE ELECTION с помощью цикла для выполнения некоторых кода при завершении цикла.
Это полезно для регистрации или отправки уведомлений, когда обработка последовательности успешно завершена.
databases = ("MySQL", "Oracle", "PostgreSQL", "SQL Server") for db in databases: print(f'Processing scripts for {db}') else: print("All the databases scripts executed successfully.")
Выход :
Примечание : Если для Loop поднимает любую ошибку, то код остального блока не выполняется.
databases = ("MySQL", "Oracle", "PostgreSQL", "SQL Server") for db in databases: print(f'Processing scripts for {db}') raise TypeError else: print("All the databases scripts executed successfully.")
Выход:
Processing scripts for MySQL Traceback (most recent call last): File "/Users/pankaj/Documents/PycharmProjects/PythonTutorialPro/hello-world/for-loop.py", line 65, inraise TypeError TypeError
Аналогичным образом, если цикла для заканчивается с помощью оператора разрыва, то другой блок не выполняется.
Вложенный для петель в Python
Когда цикл присутствует внутри другой петли, это называется вложенным циклом. Python для петель можно вложить.
list_tuples = [("Apple", "Banana"), ("Orange", "Kiwi", "Strawberry")] for t_fruits in list_tuples: for fruit in t_fruits: print(fruit)
Выход:
Обратная итерация с использованием для петли и обратной функции ()
Корпус для цикла итерации через элементы последовательности в порядке его возникновения. Иногда мы должны повторять элементы в обратном порядке. Мы можем использовать обратный () функцию с циклом для достижения этого.
numbers = (1, 2, 3, 4, 5) for n in reversed(numbers): print(n)
Выход:
5 4 3 2 1
Переменные For-Loop утечки к глобальной масштабе
Обычно переменные, определенные внутри локального пространства имен, не доступны снаружи. Как только код кода завершит свое выполнение, локальное пространство имен разрушается вместе со всеми его переменными. Но это не так с циклом для цикла.
Переменные, определенные внутри петли, идут в глобальном объеме. Мы можем даже получить доступ и изменять глобальные значения переменной пространства имен внутри цикла. Давайте проверим это поведение простым фрагментом кода.
global_var = "global" for c in range(1,3): x = 10 global_var = "for variable" print(c) # variable is defined in the for loop print(x) # variable is defined in the for loop print(global_var) # global variable
Заключение
Python для петли работает как итератор. Мы можем использовать его для итерации над элементами последовательности. Мы можем вложить в петли, чтобы повторить последовательность последовательностей. Существуют некоторые дополнительные функции – диапазон () и обратная (), что делает его более мощным.