作为函数的Python属性的默认参数

时间:2014-05-30 16:37:22

标签: python

我想知道在Python中是否有可能为Python中的函数属性指定一个默认参数(我知道这不是正确的术语所以这里是一个例子):

def foo(x, y): 
    return x + y

my_foo = foo(y=50)

my_foo(25) #returns 75

这听起来有可能吗?

2 个答案:

答案 0 :(得分:2)

from functools import partial
def foo(x, y): return x + y
my_foo = partial(foo, y=50)
my_foo(100)
Out[433]: 150

但你应该知道this

答案 1 :(得分:1)

您可以在功能定义中执行此操作:

def foo(x, y=50):
    return x+y

如果未指定y,则50是默认值:

print foo(25) # 25 is the value for x, y gets the default 50