Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте If/Else у Вкладеному Циклі | Вкладені Цикли
Посібник з циклів Python
course content

Зміст курсу

Посібник з циклів Python

Посібник з циклів Python

1. Цикл for
2. Цикл while
3. Вкладені Цикли
4. List and Dictionary Comprehensions

book
If/Else у Вкладеному Циклі

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

Давайте адаптуємо цю концепцію до практичного завдання: фільтрація витрат на подорожі. Якщо витрати перевищують певний бюджетний поріг, ми позначимо їх як "Дорогі"; в іншому випадку, ми виведемо оригінальні витрати.

Припустимо, у вас є список подорожей, і кожна подорож містить витрати на такі категорії, як авіаквитки, готелі, їжа та активності. Ваша мета - перевірити кожну витрату:

  • Якщо витрата перевищує $200, позначте її як Expensive;
  • В іншому випадку, виведіть оригінальну витрату.
1234567891011121314151617181920212223
# Travel expenses for multiple trips travel_costs = [ [500, 150, 100, 50], # Trip 1 [200, 300, 120, 80], # Trip 2 [180, 220, 130, 170] # Trip 3 ] # Setting outer while loop to work with rows (trips) i = 0 while i < len(travel_costs): j = 0 print(f"Trip {i + 1} expenses: ", end='') # Label for the current trip # Setting inner while loop to work with expenses in the current trip while j < len(travel_costs[i]): if travel_costs[i][j] > 200: # Check if expense is greater than 200 print("Expensive", end=' ') else: print(travel_costs[i][j], end=' ') j += 1 # Move to the next expense print('') # Move to the next line after each trip i += 1 # Move to the next trip
copy
  • Зовнішній цикл while ітерується через кожну подорож у списку travel_costs, використовуючи індекс i;
  • Внутрішній цикл while проходить через витрати для поточної подорожі, використовуючи індекс j;
  • Умова if/else перевіряє, чи витрата перевищує $200;
  • Після обробки всіх витрат для подорожі програма переходить на наступний рядок і продовжує до наступної подорожі.
Завдання

Swipe to start coding

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

  • Вам надано двовимірний список (список списків), де кожен внутрішній список представляє витрати однієї поїздки.
  • Ітеруйте через список витрат кожної поїздки.
  • Замініть будь-які витрати в розмірі $100 або менше на "Cheap", залишаючи інші значення незмінними.
  • Збережіть трансформовані витрати в новому двовимірному списку з тією ж структурою

Рішення

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

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

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

Секція 3. Розділ 3
toggle bottom row

book
If/Else у Вкладеному Циклі

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

Давайте адаптуємо цю концепцію до практичного завдання: фільтрація витрат на подорожі. Якщо витрати перевищують певний бюджетний поріг, ми позначимо їх як "Дорогі"; в іншому випадку, ми виведемо оригінальні витрати.

Припустимо, у вас є список подорожей, і кожна подорож містить витрати на такі категорії, як авіаквитки, готелі, їжа та активності. Ваша мета - перевірити кожну витрату:

  • Якщо витрата перевищує $200, позначте її як Expensive;
  • В іншому випадку, виведіть оригінальну витрату.
1234567891011121314151617181920212223
# Travel expenses for multiple trips travel_costs = [ [500, 150, 100, 50], # Trip 1 [200, 300, 120, 80], # Trip 2 [180, 220, 130, 170] # Trip 3 ] # Setting outer while loop to work with rows (trips) i = 0 while i < len(travel_costs): j = 0 print(f"Trip {i + 1} expenses: ", end='') # Label for the current trip # Setting inner while loop to work with expenses in the current trip while j < len(travel_costs[i]): if travel_costs[i][j] > 200: # Check if expense is greater than 200 print("Expensive", end=' ') else: print(travel_costs[i][j], end=' ') j += 1 # Move to the next expense print('') # Move to the next line after each trip i += 1 # Move to the next trip
copy
  • Зовнішній цикл while ітерується через кожну подорож у списку travel_costs, використовуючи індекс i;
  • Внутрішній цикл while проходить через витрати для поточної подорожі, використовуючи індекс j;
  • Умова if/else перевіряє, чи витрата перевищує $200;
  • Після обробки всіх витрат для подорожі програма переходить на наступний рядок і продовжує до наступної подорожі.
Завдання

Swipe to start coding

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

  • Вам надано двовимірний список (список списків), де кожен внутрішній список представляє витрати однієї поїздки.
  • Ітеруйте через список витрат кожної поїздки.
  • Замініть будь-які витрати в розмірі $100 або менше на "Cheap", залишаючи інші значення незмінними.
  • Збережіть трансформовані витрати в новому двовимірному списку з тією ж структурою

Рішення

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

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

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

Секція 3. Розділ 3
Switch to desktopПерейдіть на комп'ютер для реальної практикиПродовжуйте з того місця, де ви зупинились, використовуючи один з наведених нижче варіантів
We're sorry to hear that something went wrong. What happened?
some-alt