is there a python trick to make kwargs.get a default method value if there is no key with that name exist?

Question:

for Example if I have a code like this

class myClass:
    def a(n=100):
        print(n)


def myFunc(**kwargs):
     myClass.a(n = kwargs.get('val', 20))

myFunc()

I want it to use default argument (n=100) when there is no ‘val’ in kwargs. is there a way to do this?

Asked By: Code Incomplete

||

Answers:

Call myClass.a() with a kwargs dictionary. Then you can conditionally add the n element to that dictionary depending on whether your kwargs contains val.

def myFunc(**kwargs):
    args = {}
    if val in kwargs:
        args['n'] = kwargs['val']
    myClass.a(**args)
Answered By: Barmar
Categories: questions Tags: , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.