I was wondering if I could something like this in Python:
def func(val1,val2=val1): #do whatever you want
I could do the following:
def func(val1,val2=None): val2 = val1 if val2 == None else val2 #do whatever you want
But is there a more efficient/sexier way to do it?
Edit: I don’t think the linked question is close to what I am asking. What I am searching for is the right way to set a function’s default parameter value to the value of another parameter
Checking if a parameter is None is done often in python where the parameter could be a mutable type.
By checking if none, it ensures that if the default type is a mutable type, an existing object isn’t used.
tl;dr, what you have seems pretty pythonic to me.