Функція Range
Функція range() у Python — це вбудована функція, яка генерує послідовність чисел.
Її часто використовують для ітерації по послідовності в циклах, особливо коли потрібно виконати цикл певну кількість разів.
Це ідеально підходить для виконання завдань із передбачуваним шаблоном повторення, наприклад, поповнення полиць або планування розпродажів у продуктовому магазині.
Розглянемо, як Олексій ефективно використовує функцію range() для управління рутинними завданнями у нашому продуктовому магазині:
Синтаксис і аргументи
Функція range() може приймати до трьох аргументів, що робить її універсальною для різних сценаріїв використання циклів.
Загальний синтаксис функції range:
range(start, stop, step)
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}.")
Примітка
Послідовність починається з
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}.")
Примітка
За такого способу індексації, коли кінцевий елемент виключається, кількість елементів у послідовності можна легко обчислити, віднявши аргумент
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}.")
Приклад застосування
За допомогою функції 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}")
Swipe to start coding
Використання двох списків — weekdays та daily_promotions — для виведення акції, призначеної кожному дню тижня.
- Використання циклу
forз функцієюrange()для ітерації за індексами списків. - На кожній ітерації:
- Отримання поточного
weekdayзі спискуweekdays. - Отримання відповідної акції зі списку
daily_promotionsза тим самим індексом.
- Отримання поточного
- Виведення обох значень у вказаному форматі.
Вимоги до виводу
- Для кожного дня вивести:
<weekday>: Promotion on <promotion>
Примітка
Переконайтеся, що обидва списки мають однакову кількість елементів, щоб уникнути помилок індексації.
Рішення
Дякуємо за ваш відгук!
single
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Can you explain more about how the step argument works in range()?
What happens if I use a negative step value in range()?
Can you give more real-life examples of using range() in a grocery store?
Awesome!
Completion rate improved to 2.17
Функція Range
Свайпніть щоб показати меню
Функція range() у Python — це вбудована функція, яка генерує послідовність чисел.
Її часто використовують для ітерації по послідовності в циклах, особливо коли потрібно виконати цикл певну кількість разів.
Це ідеально підходить для виконання завдань із передбачуваним шаблоном повторення, наприклад, поповнення полиць або планування розпродажів у продуктовому магазині.
Розглянемо, як Олексій ефективно використовує функцію range() для управління рутинними завданнями у нашому продуктовому магазині:
Синтаксис і аргументи
Функція range() може приймати до трьох аргументів, що робить її універсальною для різних сценаріїв використання циклів.
Загальний синтаксис функції range:
range(start, stop, step)
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}.")
Примітка
Послідовність починається з
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}.")
Примітка
За такого способу індексації, коли кінцевий елемент виключається, кількість елементів у послідовності можна легко обчислити, віднявши аргумент
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}.")
Приклад застосування
За допомогою функції 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}")
Swipe to start coding
Використання двох списків — weekdays та daily_promotions — для виведення акції, призначеної кожному дню тижня.
- Використання циклу
forз функцієюrange()для ітерації за індексами списків. - На кожній ітерації:
- Отримання поточного
weekdayзі спискуweekdays. - Отримання відповідної акції зі списку
daily_promotionsза тим самим індексом.
- Отримання поточного
- Виведення обох значень у вказаному форматі.
Вимоги до виводу
- Для кожного дня вивести:
<weekday>: Promotion on <promotion>
Примітка
Переконайтеся, що обидва списки мають однакову кількість елементів, щоб уникнути помилок індексації.
Рішення
Дякуємо за ваш відгук!
single