Python для Loop

У цій статті ви навчитеся перебирати послідовність елементів, використовуючи різні варіанти циклу for.

Відео: Python для Loop

Що таке цикл у Python?

Цикл for у Python використовується для ітерації послідовності (списку, кортежу, рядка) або інших об'єктів, які можна повторити. Ітерація над послідовністю називається обходом.

Синтаксис для циклу

 для val в послідовності: тіло for

Тут valє змінною, яка приймає значення елемента всередині послідовності на кожній ітерації.

Цикл продовжується, поки не дійдемо до останнього елемента в послідовності. Тіло циклу for відокремлено від решти коду за допомогою відступу.

Блок-схема для циклу

Блок-схема для циклу в Python

Приклад: Python для Loop

 # 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). 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))

Вихідні дані

 Мені подобається поп Мені подобається рок Мені подобається джаз

для циклу з else

forЦикл може мати додатковий elseблок , як добре. elseЧастина виконана , якщо елементи в послідовності використовуються протягом циклу вихлопів.

breakМожна використовувати ключове слово , щоб зупинити цикл. У таких випадках інша частина ігнорується.

Отже, інша частина циклу for запускається, якщо не відбувається розриву.

Ось приклад, щоб проілюструвати це.

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

Коли ви запускаєте програму, результат буде:

 0 1 5 Не залишилось предметів.

Тут цикл for друкує елементи списку, поки цикл не вичерпається. Коли цикл for вичерпується, він виконує блок коду в 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.')

Вихідні дані

 Запису з таким ім’ям не знайдено.

Цікаві статті...