TGViewer
Python вопросы с собеседований Python вопросы с собеседований @python_job_interview · 24.9K subscribers
Post #525 3.85K
🔤Вопрос: как работает распаковка (*) в Python?
Что происходит, скажем, в случае такого генераторного выражения?
gen = (num for num in range(10))
print(*gen)



🔜Всё проще, чем кажется.
*args и **kwargs — это способы передачи переменного количества аргументов в функцию. Другими словами, они "распаковывают" значения из массива/словаря/множества и т.п. и передают эти значения в функцию.

🔜Пример использования *args:
def test(a, b): # Принимаем параметры a и b
print(a + b) # Выводим их сложение

array = [1, 2] # Создаём массив из двух чисел

test(*array) # Вывод: 3

При записи *array значения для функции были преобразованы в test(1, 2)

🔜Пример использования **kwargs:
def test(a,b): # Принимаем параметры a и b
print(a + b) # Выводим их сложение

dct = {'a':1, 'b':2} # Создаём словарь и записываем ключ-значение
test(**dct) # Вывод: 3

При записи **dct значения для функции были преобразованы в test(a=1, b=2)

🔜Таким же образом можно преобразовать данные в обратном направлении:
def test1(*var): # Принимаем параметры в виде множества
print(var)

test1(1, 2, 3) # Вывод: (1, 2, 3)

def test2(**var): # Принимаем параметры в виде словаря
print(var)

test2(a=1, b=2) # Вывод: {'a': 1, 'b': 2}


Такие вот дела 🖥

@python_job_interview
  • 👍 17
  • 🔥 7
  • 🤔 2
  • 🥰 1
More from @python_job_interview
  1. Sep 29, 2026🌟 OpenScience: персональный учёный с режимом автономных экспериментов Стартап Synthetic S…
  2. Sep 28, 2026Миниатюра из фотографии за 4 строки Python 🐍 from PIL import Image with Image.open("my_im…
  3. Sep 26, 2026Octop - open-source платформа, где можно запускать сразу несколько AI-агентов для себя, се…
  4. Sep 23, 2026Визуализация данных на Python: 10 лучших примеров с кодом Визуализация данных на Python -…
  5. Sep 22, 2026Как правильно получить случайное число в Python Если нужен диапазон от 1 до 100 включитель…
  6. Sep 19, 2026✔️ Кто подключился к вашей сети? NetAlertX обнаруживает устройства и уведомляет об изменен…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →