Python 默认参数
您可以定义一个带有默认值的函数,将其分配给一个或多个形式参数。如果没有给它传递任何值,Python会使用该参数的默认值。如果传递了任何值,则默认值会被覆盖。
示例
# Function definition is here
def printinfo( name, age = 35 ):
"This prints a passed info into this function"
print ("Name: ", name)
print ("Age ", age)
return
# Now you can call printinfo function
printinfo( age=50, name="miki" )
printinfo( name="miki" )
它将产生以下 输出 −
Name: miki
Age 50
Name: miki
Age 35
在上面的例子中,对该函数的第二次调用没有向age参数传递值,因此使用了其默认值35。 让我们看另一个为函数参数赋予默认值的例子。函数percent()定义如下 –
def percent(phy, maths, maxmarks=200):
val = (phy+maths)*100/maxmarks
return val
假设每门科目的分数都是100分制,参数maxmarks被设置为200。因此,在调用percent()函数时可以省略第三个参数的值。
phy = 60
maths = 70
result = percent(phy,maths)
然而,如果每个科目的最高分不是100,那么在调用percent()函数时需要加上第三个参数。
phy = 40
maths = 46
result = percent(phy,maths, 100)
示例
这是完整的示例:
def percent(phy, maths, maxmarks=200):
val = (phy+maths)*100/maxmarks
return val
phy = 60
maths = 70
result = percent(phy,maths)
print ("percentage:", result)
phy = 40
maths = 46
result = percent(phy,maths, 100)
print ("percentage:", result)
它将产生以下 输出 −
percentage: 65.0
percentage: 86.0