Имя атрибута функции в переменной?

203 просмотра
0
0 Комментариев

Как сделать, чтобы при передаче в функцию именованных аргументов, имена этих аргументов были в переменной? Примерно так:

x = 'name'
def a(name = None) : pass
 
a(x = 'John')


Добавить комментарий

1 Ответы

Python Опубликовано 12.12.2018
0

Вы можете использовать kwargs pattern:

def test(**kwargs):
    if kwargs:
        for k,v in kwargs.items():
            print('{}:\t{}'.format(k,v))
 
In [279]: test(first_name='John', last_name='Doe')
last_name:      Doe
first_name:     John

или так:

In [282]: parms = {'par1': 'val1', 'par2': 'val2'}
 
In [283]: test(**parms)
par2:   val2
par1:   val1

Добавить комментарий
Напишите свой ответ на данный вопрос.
Scroll Up