Passing a dictionary to a function as keyword parameters

dictionary, function, keyword, parameters, python

Solution

Figured it out for myself in the end. It is simple, I was just missing the ** operator to unpack the dictionary

So my example becomes:

d = dict(p1=1, p2=2)
def f2(p1,p2):
    print(p1, p2)
f2(**d)

Problem

I'd like to call a function in python using a dictionary with matching key-value pairs for the parameters. Here is some code: ``` d = dict(param='test') def f(param): print(param) f(d) ``` This prints `{'param': 'test'}` but I'd like it to just print `test`. I'd like it to work similarly for more parameters: ``` d = dict(p1=1, p2=2) def f2(p1, p2): print(p1, p2) f2(d) ``` Is this possible?

Original source