Как расширить список аргументов функции в Python - программирование
Подтвердить что ты не робот

Как расширить список аргументов функции в Python

Есть ли синтаксис, который позволяет вам развернуть список в аргументы вызова функции?

Пример:

# Trivial example function, not meant to do anything useful.
def foo(x,y,z):
   return "%d, %d, %d" %(x,y,z)

# List of values that I want to pass into foo.
values = [1,2,3]

# I want to do something like this, and get the result "1, 2, 3":
foo( values.howDoYouExpandMe() )
4b9b3361

Ответ 1

Он существует, но его трудно найти. Я думаю, что большинство людей называют это оператором splat.

Это в документации как " Распаковка списков аргументов".

Вы бы использовали его следующим образом: foo(*values). Там также один для словарей:

d = {'a': 1, 'b': 2}
def foo(a, b):
    pass
foo(**d)

Ответ 4

Это можно сделать с помощью

foo(*values)