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

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

book
Функція Range

Функція range() у Python — це вбудована функція, яка генерує послідовність чисел.

Її часто використовують для ітерації по послідовності в циклах, особливо коли потрібно виконати цикл певну кількість разів.

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

Розглянемо, як Олексій ефективно використовує функцію range() для управління рутинними завданнями у нашому продуктовому магазині:

Синтаксис і аргументи

Функція range() може приймати до трьох аргументів, що робить її універсальною для різних сценаріїв циклів.

Загальний синтаксис функції range:

python
  • start: це перше число у послідовності. Є необов'язковим; якщо його не вказати, послідовність почнеться з 0.

  • stop: це останнє число у послідовності, але послідовність зупиниться перед цим числом. Цей аргумент є обов'язковим.

  • step: це крок, на який збільшується (або зменшується) кожне наступне число у послідовності. Є необов'язковим; якщо його не вказати, послідовність збільшується на 1 кожного разу.

Тепер, коли ви ознайомилися із синтаксисом функції range(), розглянемо приклади, щоб побачити, як кожен аргумент — start, stop і step — впливає на поведінку циклів.

Один аргумент

Коли функція range() отримує лише один аргумент, він розглядається як параметр stop.

У нашому прикладі вона генерує послідовність із 7 елементів, починаючи з 0 і закінчуючи на 6. Цикл ітеративно проходить ці елементи, що відповідає першим 7 дням роботи магазину.

123
# Announce store opening every day for 7 days for day in range(7): print(f"Good morning! The store is now open on day {day}.")
copy

Примітка

Послідовність починається з 0 і закінчується на 6. Це відбувається тому, що Python часто починає відлік з 0, що зменшує потребу коригувати індексацію у багатьох випадках.

Два аргументи

Коли вказано два аргументи, наприклад 25 (start) і 32 (stop), range() створює послідовність від 25 до 31 (оскільки значення stop не входить до послідовності).

123
# Planning seasonal sale days in the last week of December for day in range(25, 32): print(f"Seasonal sale on December {day}.")
copy

Примітка

За такого способу індексації, де кінцевий елемент виключається, можна легко обчислити кількість елементів у послідовності, віднявши аргумент start від аргументу stop. Наприклад, 32 - 25 = 7, тобто у послідовності 7 елементів.

Три аргументи

Додавши третій аргумент до range(), ви вводите значення step, яке визначає крок між кожним числом у послідовності.

У цьому прикладі range() приймає 1 (start), 13 (stop) та 3 (step), утворюючи числа 1, 4, 7, 10. Вони можуть позначати початок змін співробітників протягом 12-годинного робочого дня.

123
# Schedule staff shifts every three hours throughout a 12-hour day for hour in range(1, 13, 3): print(f"Staff shift starts at hour {hour}.")
copy

Приклад застосування

За допомогою функції range() можна запланувати завдання на кожен день тижня, щоб усі відділи магазину були охоплені.

Цей цикл виконується 7 разів, оскільки range(7) створює числа від 0 до 6 (усього 7 елементів). У кожній ітерації змінна day приймає значення від 0 до 6, які потім використовуються для доступу до елементів списків weekly_tasks та weekdays.

123456789101112131415161718192021
# List of daily tasks for a week weekly_tasks = [ "Restock Fruits", "Clean Dairy Section", "Review Meat Inventory", "Restock Vegetables", "Check Bakery Expiry Dates", "Organize Front Displays", "Prepare Weekly Sales Report" ] # List of weekdays corresponding to each task weekdays = [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" ] # Loop through each day using the range function for day in range(7): task = weekly_tasks[day] # Access the task corresponding to the current day weekday = weekdays[day] # Access the corresponding weekday print(f"{weekday} Task: {task}")
copy
Завдання

Swipe to start coding

Використайте два спискиweekdays та daily_promotions — для виведення акції, призначеної кожному дню тижня.

  • Використайте цикл for з функцією range(), щоб ітеруватися за індексами списків.
  • На кожній ітерації:
    • Отримайте поточний weekday зі списку weekdays.
    • Отримайте відповідну акцію з daily_promotions за тим самим індексом.
  • Виведіть обидва значення у вказаному форматі.

Вимоги до виводу

  • Для кожного дня виведіть:
    <weekday>: Promotion on <promotion>

Примітка

Переконайтеся, що обидва списки мають однакову кількість елементів, щоб уникнути помилок індексації.

Рішення

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

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

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

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

single

Запитати АІ

expand

Запитати АІ

ChatGPT

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

close

Awesome!

Completion rate improved to 2.17

book
Функція Range

Функція range() у Python — це вбудована функція, яка генерує послідовність чисел.

Її часто використовують для ітерації по послідовності в циклах, особливо коли потрібно виконати цикл певну кількість разів.

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

Розглянемо, як Олексій ефективно використовує функцію range() для управління рутинними завданнями у нашому продуктовому магазині:

Синтаксис і аргументи

Функція range() може приймати до трьох аргументів, що робить її універсальною для різних сценаріїв циклів.

Загальний синтаксис функції range:

python
  • start: це перше число у послідовності. Є необов'язковим; якщо його не вказати, послідовність почнеться з 0.

  • stop: це останнє число у послідовності, але послідовність зупиниться перед цим числом. Цей аргумент є обов'язковим.

  • step: це крок, на який збільшується (або зменшується) кожне наступне число у послідовності. Є необов'язковим; якщо його не вказати, послідовність збільшується на 1 кожного разу.

Тепер, коли ви ознайомилися із синтаксисом функції range(), розглянемо приклади, щоб побачити, як кожен аргумент — start, stop і step — впливає на поведінку циклів.

Один аргумент

Коли функція range() отримує лише один аргумент, він розглядається як параметр stop.

У нашому прикладі вона генерує послідовність із 7 елементів, починаючи з 0 і закінчуючи на 6. Цикл ітеративно проходить ці елементи, що відповідає першим 7 дням роботи магазину.

123
# Announce store opening every day for 7 days for day in range(7): print(f"Good morning! The store is now open on day {day}.")
copy

Примітка

Послідовність починається з 0 і закінчується на 6. Це відбувається тому, що Python часто починає відлік з 0, що зменшує потребу коригувати індексацію у багатьох випадках.

Два аргументи

Коли вказано два аргументи, наприклад 25 (start) і 32 (stop), range() створює послідовність від 25 до 31 (оскільки значення stop не входить до послідовності).

123
# Planning seasonal sale days in the last week of December for day in range(25, 32): print(f"Seasonal sale on December {day}.")
copy

Примітка

За такого способу індексації, де кінцевий елемент виключається, можна легко обчислити кількість елементів у послідовності, віднявши аргумент start від аргументу stop. Наприклад, 32 - 25 = 7, тобто у послідовності 7 елементів.

Три аргументи

Додавши третій аргумент до range(), ви вводите значення step, яке визначає крок між кожним числом у послідовності.

У цьому прикладі range() приймає 1 (start), 13 (stop) та 3 (step), утворюючи числа 1, 4, 7, 10. Вони можуть позначати початок змін співробітників протягом 12-годинного робочого дня.

123
# Schedule staff shifts every three hours throughout a 12-hour day for hour in range(1, 13, 3): print(f"Staff shift starts at hour {hour}.")
copy

Приклад застосування

За допомогою функції range() можна запланувати завдання на кожен день тижня, щоб усі відділи магазину були охоплені.

Цей цикл виконується 7 разів, оскільки range(7) створює числа від 0 до 6 (усього 7 елементів). У кожній ітерації змінна day приймає значення від 0 до 6, які потім використовуються для доступу до елементів списків weekly_tasks та weekdays.

123456789101112131415161718192021
# List of daily tasks for a week weekly_tasks = [ "Restock Fruits", "Clean Dairy Section", "Review Meat Inventory", "Restock Vegetables", "Check Bakery Expiry Dates", "Organize Front Displays", "Prepare Weekly Sales Report" ] # List of weekdays corresponding to each task weekdays = [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" ] # Loop through each day using the range function for day in range(7): task = weekly_tasks[day] # Access the task corresponding to the current day weekday = weekdays[day] # Access the corresponding weekday print(f"{weekday} Task: {task}")
copy
Завдання

Swipe to start coding

Використайте два спискиweekdays та daily_promotions — для виведення акції, призначеної кожному дню тижня.

  • Використайте цикл for з функцією range(), щоб ітеруватися за індексами списків.
  • На кожній ітерації:
    • Отримайте поточний weekday зі списку weekdays.
    • Отримайте відповідну акцію з daily_promotions за тим самим індексом.
  • Виведіть обидва значення у вказаному форматі.

Вимоги до виводу

  • Для кожного дня виведіть:
    <weekday>: Promotion on <promotion>

Примітка

Переконайтеся, що обидва списки мають однакову кількість елементів, щоб уникнути помилок індексації.

Рішення

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

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

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

close

Awesome!

Completion rate improved to 2.17

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

some-alt