Python: вызов конструктора из словаря?

Я не совсем уверен в терминологии здесь, поэтому, пожалуйста, потерпите меня...

Допустим, у меня есть вызов конструктора, как это:

machineSpecificEnvironment = Environment(
   TI_C28_ROOT = 'C:/appl/ti/ccs/4.1.1/ccsv4/tools/compiler/c2000',
   JSDB = 'c:/bin/jsdb/jsdb.exe',
   PYTHON_PATH = 'c:/appl/python/2.6.4',
)

за исключением того, что я хотел бы заменить это операцией над предоставленным мне словарем:

keys = {'TI_C28_ROOT': 'C:/appl/ti/ccs/4.1.1/ccsv4/tools/compiler/c2000',
        'JSDB': 'c:/bin/jsdb/jsdb.exe',
        'PYTHON_PATH': 'c:/appl/python/2.6.4'}
machineSpecificEnvironment = Environment(
     ... what do I put here? it needs to be a function of "keys" ...
)

Как я могу это сделать?

2 ответа

Решение
machineSpecificEnvironment = Environment(**keys)

Вы можете применить dict в качестве списка аргументов **

machineSpecificEnvironment = Environment(**keys)
Другие вопросы по тегам