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

Что такое * и ** в Python

В Python * и ** используются для распаковки аргументов.

  1. * распаковывает итерируемые объекты (списки, кортежи) в позиционные аргументы:
python
numbers = [1, 2, 3]
print(*numbers)  # эквивалентно print(1, 2, 3)
  1. ** распаковывает словари в именованные аргументы:
python
params = {'a': 1, 'b': 2}
def func(a, b):
    return a + b
func(**params)  # эквивалентно func(a=1, b=2)

Также они используются при определении функций:

  • *args - собирает позиционные аргументы в кортеж
  • **kwargs - собирает именованные аргументы в словарь

Пример:

python
def example(*args, **kwargs):
    print(args)  # (1, 2, 3)
    print(kwargs)  # {'x': 4, 'y': 5}
example(1, 2, 3, x=4, y=5)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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