Аргументы Python как словарь

261
29

Как я могу получить имена аргументов и их значения, переданные методу в качестве словаря?


Я хочу указать необязательные и необходимые параметры для запроса GET как часть HTTP API для создания URL-адреса. Я не уверен в том, как лучше сделать этот питон.

спросил(а) 2021-01-25T19:34:11+03:00 5 месяцев назад
1
Решение
304

Используйте один аргумент с префиксом **.

>>> def foo(**args):
... print(args)
...
>>> foo(a=1, b=2)
{'a': 1, 'b': 2}

ответил(а) 2021-01-25T19:34:11+03:00 5 месяцев назад
245

Для аргументов без ключевого слова используйте один аргумент * и для ключевого слова, используйте **.


Например:

def test(*args, **kwargs):
print args
print kwargs

>>test(1, 2, a=3, b=4)
(1, 2)
{'a': 3, 'b': 4}


Аргументы без ключевого слова будут распакованы в кортеж, а аргументы с ключевыми словами будут распакованы в словарь.
Распаковка списков аргументов

ответил(а) 2021-01-25T19:34:11+03:00 5 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема