将默认函数参数设置为等于该函数的另一个字段

时间:2017-06-19 08:16:40

标签: python function formatting

我想知道我是否可以在Python中使用这样的东西:

def func(val1,val2=val1):
    #do whatever you want

我可以做以下事情:

def func(val1,val2=None):
    val2 = val1 if val2 == None else val2
    #do whatever you want

但有更高效/更性感的方法吗?

编辑:我不认为链接的问题与我提出的问题很接近。我正在寻找的是将函数的默认参数值设置为另一个参数

的值的正确方法

1 个答案:

答案 0 :(得分:1)

在python中经常检查参数是否为None,其中参数可以是可变类型。

通过检查是否为none,它确保如果默认类型是可变类型,则不使用现有对象。

tl;博士,你所拥有的对我来说似乎很诡异。