t = Test()
args = [1,2,3]
kwargs= {'a':1,'b':2}
t.f1(args,kwargs)
t.f1(kwargs)
Needs to be
t = Test()
args = [1,2,3]
kwargs= {'a':1,'b':2}
t.f1(*args,**kwargs)
t.f1(**kwargs)
Otherwise it passes args
and kwargs
as the first and second argument (which both get collapsed to *args
inside the function)
You had argument unpacking correct, but hadn't added the proper syntax for argument packing.