У овом чланку ћете научити да прелазите кроз низ елемената користећи различите варијације фор петље.
Видео: Питхон за Лооп
Шта је фор петља у Питхону?
Петља фор у Питхону користи се за итерацију кроз секвенцу (списак, скуп, низ) или друге итерабилне објекте. Итерирање над низом назива се обилажење.
Синтакса фор Лооп
за вал у низу: Тело фор
Овде val
је променљива која узима вредност ставке унутар низа на свакој итерацији.
Петља се наставља све док не дођемо до последње ставке у низу. Тело фор петље је одвојено од остатка кода помоћу увлачења.
Дијаграм тока за Лооп

Пример: Питхон за Лооп
# Program to find the sum of all numbers stored in a list # List of numbers numbers = (6, 5, 3, 8, 4, 2, 5, 4, 11) # variable to store the sum sum = 0 # iterate over the list for val in numbers: sum = sum+val print("The sum is", sum)
Када покренете програм, излаз ће бити:
Збир је 48
Функција опсега ()
Можемо генерисати низ бројева помоћу range()
функције. range(10)
генерисаће бројеве од 0 до 9 (10 бројева).
Такође можемо дефинисати старт, стоп и величину корака као range(start, stop,step_size)
. степ_сизе подразумевано је 1 ако није наведен.
range
Објекат је "лењ" у смислу јер не генерише сваки број да "садржи" када смо га створити. Међутим, то није итератор јер подржава in
, len
и __getitem__
операције.
Ова функција не чува све вредности у меморији; било би неефикасно. Дакле, памти почетак, заустављање, величину корака и генерише следећи број у покрету.
Да бисмо присилили ову функцију да избаци све ставке, можемо је користити list()
.
Следећи пример ће то појаснити.
print(range(10)) print(list(range(10))) print(list(range(2, 8))) print(list(range(2, 20, 3)))
Оутпут
опсег (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
петљама можемо користити за итерацију кроз низ бројева. Може се комбиновати са len()
функцијом за итерацију кроз низ помоћу индексирања. Ево примера.
# Program to iterate through a list using indexing genre = ('pop', 'rock', 'jazz') # iterate over the list using index for i in range(len(genre)): print("I like", genre(i))
Оутпут
Волим поп Волим роцк Волим јазз
фор петља са елсе
for
Петља може имати опциони else
блок, као и. else
Део је извршити уколико ставке у секвенци користи за петље издувне цеви.
Кључна break
реч се може користити за заустављање фор петље. У таквим случајевима, други део се занемарује.
Дакле, остали део фор петље ради ако се не догоди прекид.
Ево примера који то илуструје.
digits = (0, 1, 5) for i in digits: print(i) else: print("No items left.")
Када покренете програм, излаз ће бити:
0 1 5 Нема преосталих предмета.
Овде петља фор штампа ставке са листе све док се петља не исцрпи. Када се петља фор исцрпи, извршава блок кода у else
и исписује Нема преосталих ставки.
Овај for… else
израз се може користити са break
кључном речи за покретање else
блока само када break
кључна реч није извршена. Узмимо пример:
# program to display student's marks from record 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.')
Оутпут
Није пронађен ниједан запис са тим именом.