цикл for у python. Синтаксис, ітерація списку, розрив, продовження та інші функції

Цikl для python i цикл while – заяви програмне забезпечення мова, а саме: оператори ітерації, нехайІНГ повторний код задане число часу.

Цикл За — сintaxis

Як уже пояснювалося, cinclude for у Python — це ітератор, заснований най за циклособистість. Чи він акти за елементами кортежу и список словник ключі і інший ітеровані об'єкти.

Цикл у Python починається з ключового слова for, за яким слід довільне ім’я змінної, яка зберігає значення наступного об’єкта в заданій послідовності. Загальний синтаксис for…in у python виглядає так:

для в: else:      

компоненти «послідовності» перераховані один за одним змінна циклу. А точніше, змінна вказує на такі елементів. Для всіх з них виконується «дія».

Простий цикл for у Python із конкретним прикладом:

>>> мови = ["C", "C++", "Perl", "Python"] >>> для x у мовах: ... print(x) ... C C++ Perl Python >>>

Блок else є особливимтис. Якщо програмістыробочий с Perl знайомийы з ним, Що для тих, хто взаємодіє с C і C++ — це нововведення. Семантично це Функції тідентично поки петля.

Виконується лише тоді, коли цикл не зупинено оператором break. Тобто він виконується тільки після того, як усі елементи пройшли через вказану послідовність.

Оператор розриву в python – break

Якщо в програмі є цикл for необхідно переривати оператор розриву, he повнийвона йдета програма потік волі рахунокбути без активація з іншого.

Частіше розбивати фрази в pythonуються з умовними операторами.

edibles = ["chops", "dumplings","eggs","nuts"] для їжі в edibles: if food == "dumplings": print("Я не їм вареники!") break print("Чудово, смачно " + їжа) else: print("Як добре, що вареників не було!") print("Обід закінчився.")

Якщо ви запустите цей код, ви отримаєте такий результат:

Чудові, смачні відбивні. Я не їм пельмені! Обід закінчився.

Прибираємо «вареники» з наявного списку даних і отримуємо:

Чудові, смачні відбивні Чудові, смачні яйця Чудові, смачні горішки Добре, що не було вареників! Обід закінчився.

оператор пропуску python – продовження

Скажімо, антипатія споживача до таких продуктів не настільки велика, щоб повністю відмовитися від їх споживання. У результаті цикл продовжується з оператором continue. Наступний сценарій використовує оператор continue, щоб продовжити ітерацію по списку на «контакті вареників».

edibles = ["chops", "dumplings","eggs","nuts"] для їжі в edibles: if food == "dumplings": print("Я не їм вареники!") continue print("Чудово, смачно " + їжа) # це може бути код для насолоди їжею :-) else: print("Я ненавиджу пельмені!") print("Обід закінчився.")

Суть:

Чудові, смачні відбивні. Я не їм пельмені! Чудові, смачні яйця Чудові, смачні горіхи Я ненавиджу пельмені! Обід закінчився.

Ітерація по списках за допомогою функції range().

Якщо ви хочете отримати доступ до індексів списку, незрозуміло, як використовувати для цієї мети цикл for. Можна отримати доступ до всіх елементів, але індекс елемента залишиться недоступним. Однак існує метод доступу як до індексу елемента, так і до самого елемента. Для цього використовується функція range() у поєднанні з функцією довжини len():

fibonacci = [0,1,1,2,3,5,8,13,21] для i в діапазоні (len(fibonacci)): print(i,fibonacci[i])

Отримати:

0 0 1 1 2 1 3 2 4 3 5 5 6 8 7 13 8 21

Увага! При застосуванні len() к list or tuple, отримуємо відповідну кількість елементів заданої послідовності.

Труднощі повторення списків

Під час ітерації по списку рекомендується уникати динаміки списку в тілі циклу. Для наочності можемо запропонувати такий варіант:

colors = ["red"] for i in colors: if i == "red": colors += ["black"] if i == "black": colors += ["white"] print(colours)

Що відбувається при подачі заявки print(colours)?

['червоний', 'чорний', 'білий']

Щоб уникнути цього, рекомендується взаємодіяти з копією за допомогою фрагментів, як у прикладі нижче:

colors = ["red"] for i in colors[:]: if i == "red": colors += ["black"] if i == "black": colors += ["white"] print(colours )

Результат:

['Червоний чорний']

Список змінено colours, але ця дія не вплинула на цикл. Дані, які потрібно було повторити, залишалися незмінними під час виконання циклу.

Перерахувати в python 3

Enumerate — це вбудована функція Python. Більшість початківців, а також деякі досвідчені програмісти не знають про його існування. Він дозволяє автоматично підраховувати ітерації циклу. Наприклад:

для лічильника значення в enumerate(some_list): print(counter, value)

функція enumerate також приймає необов'язковий аргумент (значення джерела, прийняте за замовчуванням для 0). Що робить його ще ефективнішим.

my_list = ['apple', 'banana', 'cherry', 'peach'] для c, значення в enumerate(my_list, 1): print(c, value) # Результат: # 1 яблуко # 2 банан # 3 вишня # 4 персика

залишити коментар