Как использовать цикл For в Python
Как и в любом другом языке программирования, цикл в Python – отличный способ избежать написания повторяющегося кода. Однако, в отличии от цикла в то время как в Python, для цикла является окончательным заявлением потока управления , который дает больше полномочий по каждому пункту в серии.
Независимо от того, являетесь ли вы новичком в Python или уже имеете некоторый опыт работы с ним, твердое понимание цикла for является ключом к решению проблем, связанных с массивами. Здесь мы рассмотрим, как работает цикл for в Python, и несколько примеров того, как вы можете использовать его для решения задач кодирования.
Как работают циклы For в Python
Цикл for в Python работает путем итерации по последовательности массива. По сути, это полезно при работе с последовательностями, такими как строки, списки, кортежи, словари или наборы. Ключевое слово in обычно следует за циклом for в Python.
Цикл for имеет аналогичные характеристики во всех языках программирования. Например, несмотря на различия в синтаксисе, особенности цикла for в Java аналогичны тем, как работает цикл for в Python.
Общий синтаксис цикла for в Python выглядит так:
for new_variable in parent_variable:
execute some statements
Как отмечалось ранее, в отличие от время цикла, для цикла является более мощным , так как он предлагает больше контроля в потоке.
Для лучшего понимания цикл for обычно выглядит следующим образом: «Для каждого ученика мужского пола, которого вы встретите в классе, запишите одного, иначе запишите только класс женщин».
Это утверждение представляет собой простую инструкцию, которая говорит вам продолжать писать по одной для каждого ученика мужского пола, с которым вы встречаетесь в определенном классе. Это непрерывный цикл. Однако, чтобы запустить цикл for в этом случае, вы должны встретить студента-мужчину. Если нет, то запишите оператор else.
Если в приведенном выше утверждении нет условия else , вы бы ничего не писали. Это означает, что это пустой массив.
Как использовать цикл For в Python: практические примеры
Теперь давайте рассмотрим несколько практических примеров использования цикла for в Python.
Приведенный ниже фрагмент кода выводит каждый из элементов списка:
items = ["shoe", "bag", "shirts", "lamp"]
for i in items:
print(i)
Вы также можете изменить приведенный выше код для вывода любого элемента с буквой «а»:
items = ["shoe", "bag", "shirts", "lamp"]
for i in items:
if "a" in i:
print(i)
Цикл for в Python также принимает прямой оператор else :
b=[2, 3, 5, 6]
for i in b:
print(i)
else:
print("Loop has ended")
Вы также можете использовать оператор break, чтобы изменить ход цикла for :
b=[2, 3, 5, 6]
for i in b:
if i>3:
break
print(i)
Вы также можете использовать ключевое слово continue с циклом for :
b=[2, 3, 5, 6]
for i in b:
if i>3:
continue
print(i)
Использование цикла for со списком и строковыми литералами в Python
Теперь взгляните на приведенный ниже код для вывода всех положительных целых чисел от 1 до 100. Для этого вы сначала создаете список чисел от 1 до 100, используя встроенную функцию диапазона Python:
for x in range(1, 101):
print(x)
Вы можете изменить этот блок кода, введя условный оператор для вывода всех нечетных чисел от 1 до 100:
for x in range(1, 101):
if x%2==1:
print(x)
Однако вы также можете создать таблицу умножения «2 по выходу» для выходных данных приведенного выше кода. Для этого вам нужно всего лишь добавить еще несколько таких операторов:
for x in range(1, 101):
if x%2==1:
print(x, "x", 2, "=", x * 2)
Теперь, когда вы увидели, как цикл for работает со списком целых чисел. Давайте посмотрим, как можно использовать цикл for со строками.
Приведенный ниже код возвращает последовательность каждой строки в предложении:
a = "How to use a for loop in Python"
for i in a:
print(i)
Мы также можем подсчитать количество строк (включая пробелы) в переменной a, используя цикл for :
a = ["How to use a for loop in Python"]
for i in a:
print(i.count(''))
Output: 32
Однако вы также можете поместить цикл for в отдельную переменную и получить аналогичный результат, переписав приведенный выше код следующим образом:
a=["How to use a for loop in Python"]
c=[b.count('') for b in a]
print(c)
Output: [32]
Примечание: Для того, чтобы получить количество символов, убедитесь , что нет пространства между кавычками в скобках , что следует за подсчет ключевых слов.
Вы также можете изменить каждый из двух последних фрагментов кода выше, чтобы создать простой счетчик слов с помощью цикла for . Все, что вам нужно сделать в этом случае, это вставить один пробел между кавычками в круглых скобках:
a=["How to use a for loop in Python"]
for i in a:
print(i.count(' ') + 1)
Output: 8
Как и в случае с подсчетом символов, вы также можете переписать приведенный выше код подсчета слов, поместив цикл for в такую переменную:
a = ["How to use a for loop in Python"]
c=[b.count(' ') + 1 for b in a]
print(c)
Output: [8]
Обратите особое внимание на единственный пробел, который теперь находится между кавычками в круглых скобках.
Использование Python For Loop с массивом
Вы также можете использовать цикл for для получения определенного элемента из массива.
Предположим, что у вас есть массив овец со значениями «Да» для «здоровых» животных и «Нет» для «нездоровых» овец. У каждой овцы будет уникальное имя, и вы хотите поместить всех больных в карантин.
Вы можете использовать цикл for для вывода всех нездоровых овец. Чтобы увидеть, насколько полезен цикл for в этом случае, приведенный ниже код выводит имена всех нездоровых овец из массива:
array = [{"name":"Sheep1", "healthy":"Yes"},
{"name":"Sheep3", "healthy":"No"},
{"name":"Sheep4", "healthy":"Yes"},
{"name":"Sheep5", "healthy":"Yes"},
{"name":"Sheep8", "healthy":"No"},
{"name":"Sheep7", "healthy":"No"},
{"name":"Sheep9", "healthy":"No"}
]
for sheeps in array:
if sheeps["healthy"]=="No":
print("Quarantine", sheeps["name"])
Использование вложенного цикла For в Python
Вложенный цикл for полезен, когда вы хотите вывести каждый элемент в сложном или вложенном массиве. Он работает, помещая петлю внутрь другого цикла. В приведенном ниже примере кода выводится каждый из элементов вложенного списка. Однако он выводит только ключи словаря:
nested_list = [[1, 2, 4, 5], {"name":"Python", "method":"write"}]
for dict in nested_list:
for i in dict:
print(i)
Лучшее понимание списка и массивов Python полезно при работе с вложенным циклом for .
Что лучше для циклов или пока?
В зависимости от решаемой проблемы каждый цикл for и while имеет свой вариант использования в Python. Хотя цикл является более распространенным, что не делает овладение времени цикла менее важно.
В то время как для цикла предложений более общие решения через языки программирования, поместив его выше в то время цикла , является ошибочным. Всегда лучше рассмотреть любой из них для решения конкретных проблем, чем полагать, что один более полезен, чем другой. Кроме того, как программист на Python вы не можете обойтись без них.