Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Вкладені Цикли | Цикли
Вступ до Python
Секція 5. Розділ 8
single

single

bookВкладені Цикли

Свайпніть щоб показати меню

Вкладені цикли розширюють можливості простих циклів, дозволяючи виконувати повторювані дії у кількох вимірах. Це має вирішальне значення для виконання складніших завдань у продуктовому магазині, наприклад, для організації багаторівневих даних інвентаризації або координації розкладів між різними відділами.

Перегляньте, як Олексій демонструє використання вкладених циклів для підвищення ефективності та управління складними ситуаціями у нашому продуктовому магазині:

Ось базова структура вкладеного циклу for у Python:

for outer_var in outer_sequence:
    for inner_var in inner_sequence:
        # Code to run for each combination

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

Вкладені цикли є надзвичайно корисними у програмуванні, коли потрібно перебирати кілька послідовностей одночасно. Розміщуючи один цикл всередині іншого, можна ітерувати елементи у двох або більше вимірах, наприклад, у списку списків:

123456789
# Simple list of lists: each sublist is a department items = [ ["Apple", "Banana"], # Fruits ["Milk", "Cheese"] # Dairy ] for department in items: for item in department: print(item)
copy

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

Що буде, якщо не використовувати вкладений цикл

Якщо спробувати вивести кожен елемент у списку списків без використання вкладеного циклу, можна випадково вивести самі підсписки, а не елементи всередині них. Ось як виглядатиме код лише з одним циклом:

items = [
    ["Apple", "Banana"],  # Fruits
    ["Milk", "Cheese"]    # Dairy
]

for department in items:
    print(department)

Цей код виведе:

['Apple', 'Banana']
['Milk', 'Cheese']

Замість виведення кожного продукту, ви отримаєте весь підсписок (відділ) як один рядок.

Note
Примітка

Без вкладеного циклу неможливо безпосередньо отримати доступ до кожного елемента у внутрішніх списках. Вкладені цикли необхідні, коли потрібно працювати з елементами всередині кількох рівнів структури даних.

123456789
# List of lists representing grocery sections items = [ ["Apple", "Banana"], # Fruits ["Milk", "Cheese"] # Dairy ] # Non-nested loop: prints each sublist as a whole for section in items: print(section)
copy
Завдання

Проведіть, щоб почати кодувати

Вам надано два списки продуктів: produce та dairy.

Спочатку об'єднайте ці два списки в один список під назвою groceries. Кожен список (produce та dairy) має бути окремим елементом у списку groceries.

Далі використайте вкладені цикли for для виведення назв усіх товарів:

  • Зовнішній цикл проходить по кожному списку в groceries (назвіть його section).
  • Внутрішній цикл проходить по кожному елементу в цьому списку.
  • Виводьте кожний товар з нового рядка у такому форматі: Item name: <item>

Рішення

Switch to desktopПерейдіть на комп'ютер для реальної практикиПродовжуйте з того місця, де ви зупинились, використовуючи один з наведених нижче варіантів
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 5. Розділ 8
single

single

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

some-alt