Встречается на собеседованиях • сегодня

На какие виды подразделяются аргументы передаваемые в функцию

Аргументы в Python можно разделить на несколько видов:

  1. Позиционные — передаются в порядке объявления параметров функции.

    python
    def greet(name, age):
        print(f"Hello {name}, you are {age} years old")
    
    greet("Alice", 25)  # "Alice" и 25 — позиционные аргументы
  2. Именованные (ключевые) — передаются с указанием имени параметра.

    python
    greet(age=25, name="Alice")  # Порядок не важен
  1. Аргументы по умолчанию — параметры со значениями по умолчанию.

    python
    def greet(name, age=30):  # age имеет значение по умолчанию
        print(f"Hello {name}, you are {age} years old")
    
    greet("Bob")  # age=30 будет использовано автоматически
  2. Произвольные позиционные (*args) — собирает лишние позиционные аргументы в кортеж.

    python
    def sum_all(*args):
        return sum(args)
    
    sum_all(1, 2, 3)  # args = (1, 2, 3)
  3. Произвольные именованные (**kwargs) — собирает лишние именованные аргументы в словарь.

    python
    def print_info(**kwargs):
        for key, value in kwargs.items():
            print(f"{key}: {value}")
    
    print_info(name="Alice", age=25)  # kwargs = {"name": "Alice", "age": 25}

Также есть специальные (например, /, * для разделения типов аргументов в Python 3.8+).

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы