Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Довільні Позиційні Аргументи | Довільні Аргументи
Підручник з Функцій Python

bookДовільні Позиційні Аргументи

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

Note
Примітка

Кожен аргумент може бути будь-якою структурою даних (list, dict тощо). Довільні аргументи дозволяють передавати стільки таких об'єктів, скільки потрібно.

Щоб визначити довільні позиційні аргументи, розмістіть зірочку * перед іменем параметра. Приклад:

12345678
# Define function with arbitrary positional arguments named values def calculate_sum(*values): return sum(values) # Test the function using different number of arguments print(calculate_sum(1, 2, 3)) print(calculate_sum(1, 2, 3, 4)) print(calculate_sum(1, 2, 3, 4, 5))
copy

Тут *values збирає всі передані позиційні аргументи у кортеж. Усередині функції використовується ім'я змінної без *. Результат буде коректним незалежно від кількості переданих аргументів.

Note
Примітка

Хоча можна використовувати будь-яке ім'я, загальноприйнятою та зрозумілою формою є *args.

1234567891011121314
def example_function(*args): print(type(args)) print(args) for arg in args: print(arg) print("Call without arguments:") example_function() print("\nCall with one argument:") example_function(1) print("\nCall with multiple arguments:") example_function(1, 2, 3, 'hello', [4, 5, 6])
copy

Як показано:

  • Без аргументів → args — це ();
  • Один аргумент → (1,);
  • Декілька аргументів → усі значення містяться у кортежі, наприклад, (1, 2, 3, 'hello', [4, 5, 6]).

*args поводиться як звичайний кортеж, забезпечуючи повну гнучкість при обробці багатьох вхідних даних.

Завдання

Swipe to start coding

Реалізуйте функцію calculate_total, яка обчислює загальну вартість товарів у кошику, застосовуючи знижки залежно від загальної суми.

  1. Використайте довільну кількість позиційних аргументів з назвою prices у функції calculate_total.
  2. Якщо аргументи не передані, поверніть "Your cart is empty.".
  3. Застосуйте знижку 20%, якщо загальна сума $200 або більше.
  4. Застосуйте знижку 10%, якщо загальна сума $100 або більше.

Рішення

Все було зрозуміло?

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

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

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

single

Запитати АІ

expand

Запитати АІ

ChatGPT

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

close

bookДовільні Позиційні Аргументи

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

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

Note
Примітка

Кожен аргумент може бути будь-якою структурою даних (list, dict тощо). Довільні аргументи дозволяють передавати стільки таких об'єктів, скільки потрібно.

Щоб визначити довільні позиційні аргументи, розмістіть зірочку * перед іменем параметра. Приклад:

12345678
# Define function with arbitrary positional arguments named values def calculate_sum(*values): return sum(values) # Test the function using different number of arguments print(calculate_sum(1, 2, 3)) print(calculate_sum(1, 2, 3, 4)) print(calculate_sum(1, 2, 3, 4, 5))
copy

Тут *values збирає всі передані позиційні аргументи у кортеж. Усередині функції використовується ім'я змінної без *. Результат буде коректним незалежно від кількості переданих аргументів.

Note
Примітка

Хоча можна використовувати будь-яке ім'я, загальноприйнятою та зрозумілою формою є *args.

1234567891011121314
def example_function(*args): print(type(args)) print(args) for arg in args: print(arg) print("Call without arguments:") example_function() print("\nCall with one argument:") example_function(1) print("\nCall with multiple arguments:") example_function(1, 2, 3, 'hello', [4, 5, 6])
copy

Як показано:

  • Без аргументів → args — це ();
  • Один аргумент → (1,);
  • Декілька аргументів → усі значення містяться у кортежі, наприклад, (1, 2, 3, 'hello', [4, 5, 6]).

*args поводиться як звичайний кортеж, забезпечуючи повну гнучкість при обробці багатьох вхідних даних.

Завдання

Swipe to start coding

Реалізуйте функцію calculate_total, яка обчислює загальну вартість товарів у кошику, застосовуючи знижки залежно від загальної суми.

  1. Використайте довільну кількість позиційних аргументів з назвою prices у функції calculate_total.
  2. Якщо аргументи не передані, поверніть "Your cart is empty.".
  3. Застосуйте знижку 20%, якщо загальна сума $200 або більше.
  4. Застосуйте знижку 10%, якщо загальна сума $100 або більше.

Рішення

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

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

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

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

single

some-alt